Community
Participate
Working Groups
Jean-Michel: This is from the newsgroup: ================================================== I have a source layout which needs overlapping project support, which Eclipse can't handle. As of 2.1, Eclipse does support links, which allow some of these issues to be worked around. To quote from the 'Flexible Project Structure' document, my setup is now something like: ---- Example 1: |- AllProducts |- Product1 |- JavaSourceFiles |- Product2 |- JavaSourceFiles This configuration can be supported using only the new linked resources. Projects would be left in the default workspace content area, and the source folders would be linked into the monolithic directory tree. Eclipse artifacts such as .project, along with build output, would remain in the default area, thus causing no pollution of the source tree with transient or Eclipse-specific files. This solution assumes that the resources are not being managed by an eclipse team provider: /Product1 at default location /src - java source folder linked at file://AllProducts/Product1/JavaSourceFiles /Product2 at default location /src - java source folder linked at file://AllProducts/Product2/JavaSourceFiles If such a monolithic resource tree needs to use an Eclipse team provider, then an extra project can be used whose location is the "AllProducts" folder. This extra project would be a simple project without a java builder, and would be used for source control purposes only. All other projects would not have a team provider. /MasterProject at file://AllProducts (shared with team provider) /Product1 at default location (no team provider) /src - java source folder linked at file://AllProducts/Product1/JavaSourceFiles /Product2 at default location (no team provider) /src - java source folder linked at file://AllProducts/Product2/JavaSourceFiles ----- I do indeed need the team (CVS) provider, so have the master project. The problem is that this mechanism effectively breaks down when you get into refactorings the rename or move classes. If I go into one of the Java projects, and do a refactoring which renames or moves a file, all is ok there, and the changes are reflected in the master, team shared project. However, when I try to synchronize that project to get my changes into CVS, it wants to pull in all the old files under the old filenames. This happens I guess because all the changes originated in a project which was not team shared, so the team shared project just thinks they are missing from the filesystem. This situation is manageable I supposed when you are talking about one file, but when there are multiple files involved as well as some changes coming in from other developers, it can get very confusing very quickly. Am I missing something here? This is to me another indication that Eclipse must support overlapped projects. This is such a common layout that one way or another it needs to be done. Allowing one or more directories to be filtered/excluded (same as source directories can be filtered/excluded now) at the project level would allow subprojects to be defined in those directories, and completely eliminate the need for links in a large number of cases. Regards, Colin
The specific problem you are seeing is due to bug 31914 (i.e. outgoing deletions appear as incoming additions). This is scheduled to be fixed for 2.1.1. However, there is a larger issue relating to who has control over the resources involved in the operation (i.e. who has move/delete/save/edit control). The full implications of this and possible solutions will need to be investigated.
*** Bug 46544 has been marked as a duplicate of this bug. ***
*** This bug has been marked as a duplicate of 41929 ***