classpath java 项目_eclipse-Java项目:.classpath .project文件是否应提交到存储库中?...

eclipse-Java项目:.classpath .project文件是否应提交到存储库中?

这个问题已经在这里有了答案:

的.classpath和.project - 检查到版本控制或没有?                                     7个答案

我应该检入.project和.classpath文件吗?

我的朋友告诉我,我只应检入.java文件和build.xml以保证可移植性。 他说:“。classpath将使您在不同环境下的可移植性大大降低。.project完全是您的本地Eclipse设置”

我同意他的观点,但部分同意。

-不签入.project文件会使我的开发效率降低(我不能简单地从目录中“导入”项目代码)

-如果我的build.xml是精心编写的,则不签入.classpath文件对我来说似乎可以(?)。

有人要在这里分享他们的经验吗?

10个解决方案

26 votes

检入.classpath和.classpath中没有任何问题。如果您的build.xml无法为您创建两个文件,我会这样做。 如您所说,当您尝试创建新的Eclipse工作区时,错过这些文件很不舒服。

在签入.classpath之前,您应确保其中没有绝对路径。 使用文本编辑器将其转换为相对的。

编辑:甚至更好,在您的其他绝对路径中使用eclipse classpath变量,例如@ taylor-leese注释。

tangens answered 2020-02-16T03:51:33Z

10 votes

在检入.classpath文件时,我要提醒的一件事是,请确保不要在项目外部引用文件。 Eclipse使用完整的文件路径存储这些文件的位置,并且您需要确保其他开发人员将这些文件放在完全相同的位置。

MikeTheReader answered 2020-02-16T03:51:54Z

7 votes

所有这些文件的关键问题是“可以自动复制吗?” 如果没有,请检查它们进入源代码管理。

在这种情况下,我会说“是”,除非您使用的是maven,它具有m2eclipse和eclipse插件可以为您生成它们。

Dominic Mitchell answered 2020-02-16T03:52:19Z

7 votes

对于我的2美分,我认为这是一种不好的做法。 项目不应与IDE绑定,尤其不应与IDE的特定版本绑定。

对于较简单和短期的项目,检入Eclipse配置文件可能会很好。 对于经过几年开发的大型项目,这通常会带来更多麻烦,因为IDE版本会更改,而项目配置文件不会。 试想一下,使用带有一些自定义库和m2e集成的Eclipse 4.3中的Eclipse 2.0配置文件在一个已有2年历史的分支中进行检入...一点都不有趣...

Nick G. answered 2020-02-16T03:52:44Z

3 votes

我并不是很了解Eclipse首选项文件,但是使用IntelliJ时,这些文件与操作系统无关,这意味着它不会破坏您的可移植性。 除非您定义的库具有系统的完整路径(否则将非常危险/愚蠢)。

当您共享首选项时,您可以确保每个人都可以在项目上使用相同的条件(插件配置,编码,配置文件[用于intelliJ]),这确实是一件好事。

当某些Eclipse文件在这里时,它不会打扰我,当一些隐藏文件放在那里时,我认为它应该/不会真正打扰其他开发人员。

Colin Hebert answered 2020-02-16T03:53:15Z

3 votes

我们检入.project和.classpath。 使用ProjectSet,我们可以使用单个“导入团队ProjectSet”检出复杂的工作区

Thorbjørn Ravn Andersen answered 2020-02-16T03:53:35Z

2 votes

不签入.project文件将   使我的开发效率降低(我   不能简单地“导入”项目代码   从目录)

对于此问题,您可以选择创建新项目并导入现有源。

IDE特定文件(例如.project)的一个问题是其他开发人员可能希望使用另一个IDE来开发项目,因此他们可能会添加另一种类型的项目文件。 这会使您的仓库变得混乱。

mhshams answered 2020-02-16T03:54:04Z

1 votes

我宁愿签入.project和.classpath。

当多个开发人员共享该项目时,这将很有帮助。 设置开发环境变得容易和快捷。 通过简单地将其导入为使用Eclipse的任何系统上的现有项目。

这里只需要注意,类路径是相对于项目的。

YoK answered 2020-02-16T03:54:33Z

1 votes

我经常会有类似的,更笼统的提问。 问题本质上是:

我要提交哪些文件?

我要为其他人提交哪些文件?

→如何结合“版本控制”的两个目标?

我提供了在那里讨论的内容,因此您可能会找到有关该问题的更多详细信息以及有趣的解决方案:)

我最喜欢的一个是git submodule的使用:将.project等文件保存在一个私有的提交仓库中。 然后将最终的,纯净的,必不可少的src产品变成一个精巧的submodule块:一个公共回购。

project/ # root module

| .git # private repo

| .project

| .classpath

| momsNumber.txt

+---src/ # submodule

| | .git # public repo

| | main.java

| +---package/

| | | Etc.java

反正在那里。

iago-lito answered 2020-02-16T03:55:20Z

0 votes

将.classpath和.project文件检入到存储库中没有问题。 它将帮助使用Eclipse的开发人员更快地进行开发。

警告:请确保您的.classpath文件仅引用随项目一起进入存储库或可以自动获取的工件(例如maven工件)。

Eugene Ryzhikov answered 2020-02-16T03:55:45Z

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值