I do this all the time in C ++ projects (no Java, sorry, but I think this concept is portable).
I have my workspaces in ~ / workspaces / {workspace_name}. I have one common project file in ~ / {my_projects, and then the source trees (multiple versions) are in ~ / proj1, ~ / proj2, etc.
In each ~ / proj * directory, I put a symbolic link in ~ / my_projects / .project and .cproject (required for C ++ not used in Java). Therefore, each source tree uses a common project file. Then, in each workspace (one for each source tree), I set up the workspace by importing the project link. For example, ~ / workspaces / proj1 imports ~ / proj1 / .project, but ~ / proj1 / .project is actually a symbolic link to ~ / my_projects / .project.
Thus, this source stands out separately from workspaces. When creating, there is no real configuration - I just run make Eclipse in the corresponding node of the tree - we already have our own command-oriented system (we do not use ant, but the same principle should apply).
I have a source-control folder ~ / my_projects in a private SCM area, so other team members do not see this or play with it - many of them do not use Eclipse at all.
Stabledog
source share