Community
Participate
Working Groups
The output folder of a java project doesn't have the "Derived" property. Create a java project, and set its "default output folder" to a subdirectory like "bin". Add a java class to the project. Switch to the Resource Perspective, and you will see that the build created a "bin" directory. If you check its properties you will see that "[ ] Derived" is not checked. If you check each of the directories in the package path in that directory, you will see "[x] Derived" is checked. A problem that this causes is that a team provider importing a Team Project Set that includes java projects will ask "Do you want to add to source control" for each of the java project's "bin" directory, due to the build taking place. This means that importing projects *from* source control, will ask you to add folders *to* source control. This is because there doesn't seem to be a way to easily distinguish the build creating the directory, from the user creating a new directory. If they were marked "Derived", the "bin" directories would have been ignored.
I need to double check, but I'm pretty sure the builder marks the output folder as derived if it creates it. If someone else creates it, then we cannot mark it.
The output folder is not created by the Java builder since the 'user' creates it when he creates a new project & as a result its not a derived folder. You can see this by turning off 'Build Automatically' & creating a new project. You will see that 'src' & 'bin' folders were created before any build took place. Derived is reserved for generated files/directories.
Thanks for identifying that it isn't the builder that "generates" the output folder. The code that "generates" the output folder should mark it "Derived".
This is a user created folder. Its not generated by any tool & reopening this PR is not going to change that.