【问题标题】:What is the correct way to have a Java Project with Eclipse on GitHub在 GitHub 上使用 Eclipse 进行 Java 项目的正确方法是什么
【发布时间】:2013-10-03 20:11:37
【问题描述】:

我正在使用 Eclipse 开发一个 Java 项目,我们希望将它放在 GitHub 上,以便公众可以访问它。但我们并不完全确定将 Java 项目放到 GitHub 上的正确方法是什么。我们已经做了一个 GitHub 并上传了一个 Java 项目。但是,当使用 EGit 将其检查到我的计算机时,所有文件夹现在都是包。

有什么办法可以避免这种情况吗?您如何将 Java 项目上传到 GitHub?有没有我们现在没有意识到的困难?

【问题讨论】:

  • 使它成为一个 Maven 项目。否则,您将依赖于内部 Eclipse 工作区文件的二进制形式。
  • 工作空间文件的二进制形式是什么?我使用 exlipse,它的 .project 文件看起来很 XML。为什么转换为 Maven 更好?为什么坚持使用 Eclipse 需要非 Eclipse 技术?可能我们根本不应该使用 Eclipse?
  • @val 只要 Eclipse 文件不是 1) 作为 API 记录的文件和 2) 版本之间的细微更改,出于所有实际目的,它们都是黑色的二进制框。 Maven 有据可查且与 IDE 无关。 Eclipse 很好——只是不要依赖它的内部文件。
  • 这些构建指南旨在允许源文件的格式适合签入:agiletribe.wordpress.com/2013/07/16/designing-the-build 如果有帮助。

标签: java eclipse github


【解决方案1】:

我喜欢使用的一个很好的例子是我的getting started with selenium 项目。

这是一个支持 Maven 的 Java 项目,托管在 github 上。

但是,当使用 EGit 检查它时,我的计算机上的所有文件夹现在都是包。

这是因为您的.classpath。如果添加了源文件夹(如 src/main/java),任何后续文件夹都将是“包”。

您如何将 Java 项目上传到 GitHub?

正如您在上面的项目中看到的那样。上传除二进制文件和 jar 依赖项之外的所有内容。 (这就是我使用 Maven 的原因)

有什么我们现在没有意识到的困难吗?

在我工作的地方,我们使用一个流程,我们在 github 上的项目是整个 Java 项目。我听说上传像.project 这样的eclipse 特定的东西很糟糕,但即使是使用IntelliJ IDEA 的人,这似乎也不是问题,因为他们可以上传他们的.file

要记住的一件事是您的.gitignore。确保避免 /target/classes/* 和其他特定于 java 的编译,因为您希望您的 repo 仅是 source code. (我确实忘记在上面的那个项目上做的一件事..将修复;))

【讨论】:

    【解决方案2】:

    在将项目上传到 VCS 系统(git 与否)时,我宁愿不上传 .projects 或 .idea 文件。

    我将这些文件夹添加到我的 .gitignore 文件中(我上传到 VCS)

    问候。

    【讨论】:

    • 所以您必须手动配置所有内容?如果你的团队超过 10 人怎么办?地狱。 > 100
    • 我使用 maven 项目/模块,如果需要,conf 在特殊项目中(weblogic 域等...),开发人员计算机已预先安装了企业配置,因此无需手动配置,我们几乎这里有200人。即使没有完成,您还需要什么“手动”配置?插件?工作区? VCS 网址?我不认为这是一个问题,因为每个开发人员都应该能够处理这个问题,你不觉得吗?
    • .projects 和 .idea?你确定你说的是日食?我的.Eclipse 版本在workspace 目录中有.metadata,在项目文件夹中有.project+.classpath。您应该“cvs”项目文件,包括这两个文件。这对于设置环境(例如 jar 文件)非常有用,尤其是当您的项目依赖于它们时。
    • 正如在使用 maven 之前所说的那样,无需将 jar 定义为项目结构中的依赖项(是的,我在 .project 文件夹名称上打错字了)。我认为现在将这些文件夹放在 VCS 中是不好的做法(因为将 jar 放在 VCS 中似乎也很糟糕......)。 project conf 可以顺便用 mvn eclipse:eclipse 命令生成。
    猜你喜欢
    • 1970-01-01
    • 2018-10-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-21
    • 1970-01-01
    相关资源
    最近更新 更多