2008-09-17 64 views
8

如何确保您可以将代码签出到Eclipse或NetBeans中并在其中工作?你如何处理不同的Java IDE和svn?

编辑:如果你没有检查与IDE相关的文件,你必须重新配置buildpath,包括所有这些东西,每次你签出项目。我不知道,如果蚂蚁(特别是从eclipse创建/导出的ant buildfile)可以无缝地与其他ide一起工作。

+0

在2017年,事实上的方式是使用Maven并明确地将IDE工作文件放在源代码管理之外。所有主要的IDE都有很好的支持。 – 2017-09-20 23:20:58

回答

7

自作聪明答案是“通过这样做” - 除非你不使用多个IDE,你不知道你是否真的准备好使用多个IDE。诚实。 :)

我总是看到多个平台更麻烦,因为他们可能使用不同的编码标准(例如Windows可能默认为ISO-8859-1,Linux到UTF-8) - 对我来说编码导致了更多的问题比IDEs。

一些更多的指针:

  • 您可能需要使用Maven(http://maven.apache.org)去,让它产生IDE特定文件,从不把它们提交到源代码控制。
  • 为了确保您正在生成正确的工件,您应该有专门的服务器在蚂蚁,Maven或任何其他工具的帮助下构建您的交付物(例如巡航控制系统)。这些可交付成果是在开发机器之外进行测试的。伟大的方式让人们意识到自己的机器之外还有另一个世界。
  • 禁止在源代码控制中找到的任何IDE特定文件中包含任何机器特定路径。总是通过逻辑路径名称引用外部库,最好包含它们的版本(如果您不使用maven)
+0

我也喜欢这个答案,它也很好。 http://stackoverflow.com/questions/81567/how-do-you-handle-different-java-ides-and-svn#84958 – Arvodan 2008-09-18 05:46:15

1

最好的事情可能是而不是提交任何与IDE相关的文件(如Eclipse的.project),这样每个人都可以签出项目并按自己的意愿完成自己的任务。这就是说,我认为大多数IDE都有自己的配置文件方案,所以也许你可以在没有任何冲突的情况下提交它,但它感觉凌乱。

0

大多数情况下,我会同意seldaek,但我也倾向于说至少应该给出一个文件,说明依赖关系是什么,用于编译的Java版本等等,以及任何东西此外,NetBeans/Eclipse开发人员可能需要在其IDE中进行编译。

我们目前只使用Eclipse,因此我们将所有Eclipse .classpath .project文件提交给svn,我认为这是更好的解决方案,因为那样每个人都可以重现错误,而不是轻松地使用IDE细节。

+0

到目前为止,我们都是这样做的。如果你失去了所有关于依赖关系和编译的信息,新开发人员参与该项目将会是一个巨大的混乱。 – Arvodan 2008-09-17 10:07:51

0

我的理念是构建应该用“最低公分母”方法来完成。进入源代码控制的内容是构建所需的东西。虽然我完全使用Eclipse进行开发,但我的构建是在命令行使用ant。

对于源代码控制,我只从命令行中检查对构建来说很重要的文件。没有Eclipse文件。当我设置一个新的开发机器(似乎每年两次)时,需要一点点努力才能让Eclipse从ant构建文件导入项目,但没有什么可怕的。 (理论上,这对其他IDE来说应该是一样的,不是吗?他们必须能够从蚂蚁进口吗?)

我也记录了如何设置一个最低限度的编译环境。

0

我使用maven,并检查只是pom &来源。
检查了项目后,我运行mvn日食:日食
我告诉SVN忽略产生的.project等

9

实际上,我们保持了Netbeans和我们在SVN代码Eclipse项目现在没有麻烦。 Netbeans文件不会踩在Eclipse文件上。我们构建这样我们的项目:

sample-project 
+ bin 
+ launches 
+ lib 
+ logs 
+ nbproject 
+ src 
    + java 
.classpath 
.project 
build.xml 

最大的点似乎是:

  • 禁止在任何IDE中 项目文件中的任何绝对路径。
  • 设置项目文件将 类文件输出到同一个目录。
  • svn:忽略.nbproject 目录中的私人 目录。
  • svn:忽略用于 IDE文件输出的目录和任何其他运行时生成的目录(如上面的日志目录)。
  • 让人们一致使用 ,以便快速解决差异 。
  • 还维护独立于IDE的编译系统 ,例如巡航控制系统 。
  • 使用UTF-8并立即纠正任何编码问题 。

我们正在开发Fedora 9 32位和64位,Vista和WindowsXP,大约一半的开发人员使用一个IDE或另一个。少数人使用和定期来回切换。

0

这里是我做的:

  1. 在源代码控制,只有保持你的Ant构建脚本和相关的类路径。类路径可以在ant脚本中显式显示,属性文件也可以由ivy管理。
  2. 编写一个ant目标从蚂蚁类路径生成Eclipse .classpath文件
  3. Netbeans将使用您的构建脚本和类路径,只需通过一个自由格式项目配置它即可。

这样,你得到IDE独立构建脚本和快乐开发商:)

有一个关于如何做3.在NetBeans的网站的博客,但现在我找不到它。我已经提出了一些关于如何在我的网站上执行上述操作的注意事项 - link text(快速而丑陋,但很抱歉)

请注意,如果您使用Ivy(一个好主意)和eclipse,您可能会试图使用日食常春藤插件。我用它,发现它是可怕的车和不可靠的。更好地使用2.以上。