开发者社区> 问答> 正文

什么是gitignore .classpath和.project?

我的一位同事最近在eclipse中创建了一个新项目,并使用内置的git client进行了提交和推送。克隆到计算机并使用eclipse打开后,我发现eclipse创建了.classpath文件。.classpath是否不是Eclipse项目(也是.project)查找引用的jar的关键文件?谷歌搜索后,我感到非常困惑,看到所有讨论都在谈论忽略它们。它们对Eclipse正常工作不是至关重要的吗?人们为什么不理会他们?如果我不理them他们,那会是什么问题?

问题来源:Stack Overflow

展开
收起
montos 2020-03-27 14:23:19 884 0
1 条回答
写回答
取消 提交回答
  • 这些特定于Eclipse的文件使为Java项目设置 Eclipse和Visual Studio Code 更加容易。

    通常,只要使用和维护IDE和工具特定的文件(Eclipse,JenkinsfileGitHub工作流设置等),就应该共享它们。否则,将其删除。

    当然,如果您使用与Eclipse和Visual Studio Code 不同的IDE,并且不在IntelliJ IDEA中使用Eclipse编译器,则这些特定于 Eclipse的文件是无用的,但不会造成伤害。只要您不使用文件或文件夹链接(存储在文件中)之类的功能,共享这些文件就不会导致IDE锁定。.project

    在Maven和Gradle项目中,.classpath文件可以从pom.xml或build.gradle文件派生,但是不能共享的设置(如编译器设置(警告和错误),格式化程序或保存操作设置(存储在项目的.settings文件夹中))应该共享,以便所有人使用相同的。

    这也适用于.project文件,因为它包含项目具有的性质以及所需的工具。如果缺少某些内容,将出现一个对话框,询问是否应安装缺少的插件。

    Eclipse将这些文件放到项目文件夹中,而不是放到该.metadata文件夹中,因为它们是要共享的。但是,为什么有些人不共享这些文件?可能是由于历史原因。15或20年前,没有Git,Maven和Jenkins。如今,通常通过手动导出JAR或最多通过一些批处理/ shell脚本在开发人员的计算机上构建Java应用程序。这意味着,在不同的计算机上甚至使用不同的IDE或IDE版本进行相同的构建可能导致不同的结果,从而带来很多麻烦。与IDE无关的构建是解决这个问题的方法。也许这就是为什么今天的人们仍然认为一切都必须与IDE无关,并建议使用Maven或Gradle。但是这些文件没有共享以构建要发货的产品。希望。

    回答来源:Stack Overflow

    2020-03-27 14:23:54
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Project Fortis 立即下载
Build Your Next ApacheSparkJob 立即下载
低代码开发师(初级)实战教程 立即下载