我的团队使用Eclipse处理多个Java项目,并使用代码存储库共享代码。
当开发人员添加,删除或更新jar
文件时,构建将被其他所有人破坏,直到他们在Eclipse中更新其构建路径。此过程涉及繁琐的电子邮件同步。
由于多种原因,我们决定不将.classpath
文件提交给回购。相反,我们提出了以下想法:每个项目都有一个提交文件,比如说jars.list
,其中包含jar
个文件(和模式)的列表。脚本会将此文件转换为本地.classpath
以进行日食。每当开发人员更换其jar时,更改jars.list
并提交它是他或她的责任。
这是一个合理的解决方案吗?这个问题有没有现成的解决方案?
答案 0 :(得分:4)
Eclipse .project
和.classpath
文件旨在/设计用于检入版本控制存储库(cvs,svn,git等)。请参阅Eclipse wiki中的this page。
有多种方法可以保持.classpath
文件“干净”(即,没有绝对路径),我在上面的评论部分提到过。
答案 1 :(得分:2)
构建被破坏是因为每个开发人员机器中JAR的绝对路径是不同的?如果是这样,您可以添加用户变量以避免此问题,这样每个开发人员只需配置一个变量(如LIB_DIR
):
<classpathentry kind="var" path="LIB_DIR/path/to/file.jar"/>
还有其他解决方案。您可以在eclipse中配置一些用户库以对JAR进行分组,然后导出可以在您的仓库中共享的.userlibraries
文件。这样,.classpath
中就没有绝对路径,但它们会出现在.userlibraries
中。
您还可以使用Maven之类的工具来管理项目的依赖关系。
无论如何,我认为你可以毫无问题地分享.classpath
......