当前位置: 首页 > 知识库问答 >
问题:

是否需要通过Eclipse GUI和Gradle配置文件添加依赖项?

丁灿
2023-03-14

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

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

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

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

共有1个答案

班建义
2023-03-14

当您使用像Gradle(或maven)这样的构建工具时,就会假定构建工具负责配置项目依赖项和类路径之类的东西。

这种情况与Eclipse UI冲突,Eclipse UI的构建是为了允许您通过它自己的UI管理类路径/依赖项。

但是Eclipse UI仅控制Eclipse在Eclipse JDT编译器编译代码时将什么用作类路径...日食内部。

因此,如果你这样改变事情,那么Gradle将不知道这些依赖关系,并且构建将无法工作。

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

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

   gradle cleanEclipse eclipse

从构建配置生成eclipse项目配置。然后按照Gradle的配置将项目导入Eclipse。在这种情况下,使用Eclipse UI对buildpath进行更改也是一个坏主意,因为它最终会有相同的问题,您对生成的文件所做的更改可能会在Eclipse内部进行编译,但Gradle并不知道您更改了任何内容。下次运行gradle cleaneclipseeclipse时,您的更改也会消失。

关于你的具体问题:

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

是的。

...不通过Eclipse GUI添加依赖项...

是的。

一般经验法则。只索引定义Gradle行为的东西(可能有一些例外,但通常尽量减少它们,只有在你有充分理由的情况下才会违反这条规则)。

所以特别是不要在git中放入这些“Eclipse元数据”

  • .设置
  • .project
  • .classpath

请放入git:gradle包装器及其属性文件。

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

 类似资料:
  • 本文向大家介绍gradle 添加依赖,包括了gradle 添加依赖的使用技巧和注意事项,需要的朋友参考一下 示例 Gradle中的依赖项遵循与Maven相同的格式。依赖关系的结构如下: 这是一个例子: 要添加为编译时依赖项,只需dependency在Gradle构建文件的代码块中添加以下行: 为此的另一种语法可以显式地命名依赖项的每个组件,如下所示: 这在编译时增加了依赖性。 您也可以仅为测试添加

  • 本文向大家介绍gradle 添加本地JAR文件依赖性,包括了gradle 添加本地JAR文件依赖性的使用技巧和注意事项,需要的朋友参考一下 示例 单罐 有时您需要添加本地JAR文件作为对Gradle构建的依赖。这是您可以执行的操作: path文件系统上的目录路径在哪里,是local_dependency.jar本地JAR文件的名称。该path可以相对于构建文件。 JAR目录 也可以添加一个jar目

  • 显然,出于某种原因,Gradle 似乎认为我的“Spring数据”依赖于 slf4j。这是 gradle 打印出来的依赖关系图 尽管spring data commons实际上并不依赖于slf4j:http://mvnrepository.com/artifact/org.springframework.data/spring-data-commons/1.5.1.RELEASE 为什么gradl

  • 我已经在build.xml中构建了一个maven项目A,包括使用另一个pom导入所有测试依赖项。当我试图将maven项目A包含到gradle项目B中时,它给出了错误。 我尝试使用[--info]首先尝试正确的存储库URL并更新jar [缓存的资源是最新的]。但最终它会尝试其他人并抛出错误。 如何从gradle构建文件中传递配置文件名? 感谢您的帮助。 项目A- 项目B- 错误消息

  • 其中/usr/local/bin/kiaragen.jar是要执行的文件。现在,我尝试运行一个依赖于a.class文件的不同版本: 将文件添加到类路径: 提供以下异常: 如何将.class文件添加到类路径?

  • 我需要通过gradle build将mail-1.4.7 jar文件包含到我的intellij idea项目库中。我将编译存储库名称添加到我的构建中。gradle文件如下: 编译“javax”。邮件:邮件:1.4.7' 然后我运行了我的构建,虽然在构建过程中没有错误,但我无法在我的项目库中看到jar。我在考虑通过gradle构建,jar将被自动管理。不确定我是否需要尝试其他东西。我还尝试运行gra