You can add multiple sources roots to either standard or free-form projects that require them. However, you should never add the same source root to more than one project because this is not supported in the IDE.
In Standard projects, it is sometimes advantageous to add additional source roots to your project's classpath such as, for example, when the project uses sources stored in a separate resources folder. Because all source directories on a standard project's classpath form a single compilation unit, they are also packaged into the application's JAR when the project is built. In Standard projects, you add source roots to the classpath using the project wizard and properties dialog.
In free-form projects, each source root can be assigned to independent compilation units providing you maximum flexibility when structuring your applications. Free-form projects, however, require that you manage the classpath by editing your build.xml file directly. For more information, see Managing the Classpath.
If you want to add a library to more than one project, you must create a special project within which store the library's compiled source that you want to use.