【问题标题】:Gradle + Buildship - Switch dependency between JAR and projectsGradle + Buildship - 在 JAR 和项目之间切换依赖关系
【发布时间】:2015-12-13 00:43:36
【问题描述】:

我在按照我想要的方式配置 Buildship for Eclipse 时遇到了一些问题。我目前在 Eclipse 中始终打开 50 个以上的项目,但我想只在 Eclipse 中使用我正在积极处理的项目,而其他项目将使用 Maven 存储库来解决它们的依赖关系。

假设 ProjectA(其中包含一个 main)依赖于 ProjectB(一个库项目)。如果 ProjectB 在 Eclipse 中打开,我希望 ProjectA 直接使用 ProjectB。运行 ProjectA 时,ProjectB 中的代码更改会很明显。但是,如果 ProjectB 已关闭,我希望 ProjectA 使用位于 build.gradle 文件中提到的 Maven 存储库中的 ProjectB 的 JAR。

我所说的行为详细here

有没有办法使用 Buildship 做到这一点?还是应该使用另一个 Gradle Eclipse 插件?

【问题讨论】:

    标签: eclipse gradle maven-2 build.gradle gradle-eclipse


    【解决方案1】:
    1. Gradle 3.1 中添加了一个新的 composite build support 功能。此功能改变了游戏规则,让您可以轻松地同时处理多个项目。

    2. 您可以使用dependency substitution rules 将存储库依赖项替换为本地项目依赖项。

    3. 如果每个项目都在它自己独立的 git/subversion 存储库中,您可以使用 prezi pride 来管理项目的“骄傲”。您可以将(动态生成的)多模块构建导入 buildship。

    4. 1234563构建与 gradle 命令行不同)。

    【讨论】:

      【解决方案2】:

      为了完成,我最终按照 Lance Java 的建议进行了依赖替换。这种方法有以下优点:

      • 不需要第三方软件。
      • 独立于 IDE。我们不会直接修改 .classpath 文件,而是让 Eclipse 插件(或任何其他 IDE 插件)处理这个问题。
      • 其他插件可以访问我们要使用的实际依赖项。

      但是,这种方法存在一些问题:

      【讨论】:

      • 如果我弄错了,请纠正我,但此解决方案仅适用于 gradle 项目。如果我需要用不属于 gradle 构建的工作区项目替换依赖项怎么办?
      猜你喜欢
      • 2016-08-06
      • 2023-04-08
      • 1970-01-01
      • 2017-06-09
      • 2017-04-05
      • 1970-01-01
      • 2012-03-24
      • 2013-09-18
      • 2017-10-29
      相关资源
      最近更新 更多