0

需要使用 Eclipse IDE 在同一个存储库中创建两个 Gradle Git 项目。项目 A依赖于第三方库(一个 JAR、源代码、Javadoc 和本机),项目 B依赖于项目 A

如果没有 Gradle,两个项目都将被创建,并且 Git 将启用Project Explorer > [Project Name] > Team > Share Project. 然后,将通过添加依赖项Project Explorer > [Project Name] > Build Path > Configure Build Path,然后是Projects > Addand Libraries > Add External JARs(这也将允许指定相关源代码、Javadoc 和本机的位置)。这将使项目 B的项目 A的代码自动完成以及 Eclipse 中的源代码和 Javadoc 集成成为可能。

使用 Gradle时,应该手动编辑settings.gradlebuild.gradle文件,而不通过 Eclipse GUI 添加依赖项,还是必须同时使用两者?此外,这对 Git 应该索引哪些隐藏文件(.project.classpath.settings.gradle)有何影响?

如何通过 Eclipse和 Gradle 进行设置?

4

1 回答 1

0

当您使用像 Gradle(或 maven)这样的构建工具时,假设构建工具负责配置项目依赖项和类路径等内容。

这种与 Eclipse UI 的冲突是为了让您通过自己的 ui 管理类路径/依赖关系而构建的。

但是,当 Eclipse JDT 编译器编译您的代码时,Eclipse UI 仅控制 Eclipse 使用的类路径……Eclipse 中。

因此,如果您以这种方式进行更改,那么 Gradle 将不知道这些依赖关系,并且构建将无法正常工作。

是的,这绝对令人困惑:-)

正确的做法是完全通过 gradle 管理您的依赖项和项目配置。这意味着编辑 build.gradle 和 settings.gradle。

这些工具(BuildShip 或 STS Gradle 工具)提供了一个“桥梁”来尝试和配置 Eclipse 项目以符合您的构建。

例如,他们可能会在项目上下文菜单中提供“更新项目”或“刷新依赖项”命令。

即使您不使用 Gradle 工具,这种情况也适用。然后,您将使用 Gradle 的 'ecplise' 插件并运行类似的命令

   gradle cleanEclipse eclipse

从构建配置生成 Eclipse 项目配置。然后按照 gradle 的配置将项目导入到 Eclipse 中。同样在这种情况下,使用 Eclipse UI 来更改构建路径是一个坏主意,因为最终它有同样的问题,你对那些生成的文件所做的更改可能会使东西在 Eclipse 中编译,但 Gradle 不知道你改变了任何东西。下次运行时,gradle cleanEclipse eclipse您的更改也会被吹走。

至于你的具体问题:

是否应该手动编辑 settings.gradle 或 build.gradle 文件...

是的。

...无需通过 Eclipse GUI 添加依赖项...

是的。

...或者必须同时使用两者?

不,只在 gradle 中配置东西。然后使用一些工具(BuildShip / STS Gradle / gradle cleanEclipse eclipse) “同步”到 Eclipse

这对 Git 应该索引哪些隐藏文件(.project、.classpath、.settings、.gradle)有何影响?

一般经验法则。只索引定义 gradle 行为的东西(可能会有一些例外,但一般来说,如果你有充分的理由,尽量减少它们只会违反这条规则)。

所以特别不要把这些'eclipse元数据'放入git

  • .settings
  • 。项目
  • .classpath

一定要放入 git:gradle 包装器及其属性文件。

Gradle 也有一个.gradle文件夹。它属于 gradle,而不是 eclipse,而是缓存和“瞬态”的东西。你也不想要那些在 git 中的。

于 2016-07-22T22:05:28.500 回答