The problem with “derived” is that you can’t assign the “derived” status to all “*,D” files, afaik it can be set only on a per-file basis.
But, there’s a much better way to exclude files from compilation/deployment:
Project > Properties > Java Build Path > Source > Excluded (subnode of each source folder) > Edit
The exclusion pattern you’re looking for is **/*,D