If you are not using a repository or software configuration management (SCM) system, such as ClearCase, and you want to share projects with team members, you can use the Project Interchange feature.
There are many different ways that you can develop in a team environment and share projects and resources. One of the best methods is to use a team repository, such as ClearCase or CVS. For information about using CVS in a team environment to share files and other resources, see Working in the team environment or Working with a CVS repository.
There are other ways that you can share projects and files. You can share an entire workspace by copying or archiving it; or you can export projects into EAR files, WAR files, JAR files, or simple ZIP files. Each of these methods has its own advantages and disadvantages that might not suit your needs. For example, exporting EAR files and WAR files is not optimized for the purpose of sharing, and you might lose metadata or waste time during a subsequent import.
Project Interchange sharing mechanism
A more optimal solution is to use the Project Interchange feature. When you export using Project Interchange, the entire project structure is maintained, including metadata files. You can also export several unrelated projects or include required projects for an entire application, like when you export an EAR file. The projects can then be easily imported into another workspace with a single action.
When you export a project with Project Interchange, you also have the option of exporting with or without derived files. Derived files are files generated from source files and are not original data, so typically it is not necessary to include them when sharing projects. For example, files generated by tools such as EJB Deploy or WebServices Deploy are marked as derived, as well as Java .class files. Including derived files will increase the size of the exported Project Interchange file, and including derived files may not be useful because they may be regenerated when the file is imported into another workspace. However, you may want to share derived files if the person you are giving them to does not have the ability to generate the derived files, or if you are trying to diagnose problems with the derived files.
You can find out if a file is marked as derived by right-clicking the file in the Navigator or Project Explorer view and then clicking Properties. If the Derived check box is selected, the file is derived. However, the exported Project Interchange file does not store information about which files are marked as derived. When that Project Interchange file is imported into another workspace, none of the files will be marked as derived.
For more information on which files are considered derived and why you would or would not want to include them, see Derived resources.