git - 推送java .classpath文件?

qua*_*yte 5 java git classpath libraries

我有一个小的java项目,我和朋友一起工作.我们都使用eclipse与egit插件和github进行版本管理.

除了JRE库,我们使用javafx和RXTX库.由于我们都需要库,我们将它们放在项目的lib文件夹中.然后我们设置.classpath来引用项目中的库,并将.classpath推送到github.

那时,我们意识到,不同的计算机需要不同的库,并且在CVS中使用.classpath文件可能是个坏主意.

所以我的问题是,这里的最佳做法是什么?提交.classpath文件似乎是一个坏主意,但是我希望能够控制项目中使用的库,因此为库jar提供其他项目文件可能是一个好主意; 然后,拉动项目的人可以轻松地将他的系统的jar添加到类路径中.但是,因此我必须为每个系统(win32,win64,linux,...)提供javafx和RXTX库,这似乎也不是最好的事情.

我觉得这可能已经被问过,但是我找不到令人满意的问题/答案.

Fra*_*man 7

要回答你的问题"这里的最佳做法是什么?":

二进制文件(jar)不属于源代码管理.为了解决这个问题,开发人员通常使用一些带有依赖管理的构建工具,它将从远程存储库下载jar.Java世界中最受欢迎的是:

Maven - http://maven.apache.org

Gradle - http://www.gradle.org

SBT - http://www.scala-sbt.org/(主要用于Scala,但也适用于Java)

Ant - http://ant.apache.org

.classpath文件是IDE特定的(eclipse)"项目"描述符,实践可能因团队而异,但最常见的可能是在.gitignore中列出这些文件而不是提交它们.这些文件可能包含不在团队中共享的开发人员特定设置,或者开发人员可能使用不同的IDE,并且存储库将受到这些文件的污染.