【问题标题】:Dealing with multiple inter-dependent groups of gradle projects in a single Eclipse workspace在单个 Eclipse 工作区中处理多个相互依赖的 gradle 项目组
【发布时间】:2015-04-09 01:55:57
【问题描述】:

这让我很长时间以来都没有意识到这一点。我仍然不知道 Eclipse 是否有办法使用任何插件来实现某些 gradle 项目(在工作区中)依赖于其他 gradle 项目(也在工作区中),而这些项目来自其他不同的位置(例如,单独的源代码库) .

它们最终不是相互依赖,而是相互依赖已发布的工件。我必须在构建脚本中明确支持编码,作为 eclipseClasspath eclipse 插件的一部分,用于 gradle 创建 Eclipse 工作区位,同时被告知(在命令行上)这些其他项目将存在于工作区中。

这不仅繁琐且不可维护,还需要预先了解工作区中可能存在的内容、这些项目的名称、繁琐的命令行等。

这个问题有解决方案吗?或者有解决方案吗?

例子:

假设有一个名为“A”的“产品”。它可以有多个 gradle 项目,比如“一个”和“两个”。这些作为 A:one 和 A:two jar 工件发布到 maven 或 ivy 风格的 repo。说“二”取决于“一”。您可以将其导入 Eclipse,一切都会好起来的。 Eclipse 项目“二”将依赖于 Eclipse 项目“一”,而不是从 maven/ivy repo 下载的 one.jar。

还有另一个单独的产品“B”。它也有多个 gradle 项目,比如“foo”和“bar”。假设“bar”依赖于“foo”,而“foo”恰好依赖于 A:one。一切都还好。如果将“B”项目导入 Eclipse,“bar”和“foo”项目将出现,“bar”将依赖于“foo”项目,而不是 jar....而 foo 将依赖于自动下载的 A:one罐子。

但是必须有人同时在 A 和 B 上工作。因此他们将所有项目导入 Eclipse 工作区。他们修改了 A:one 中的某些内容(比如修复了一个错误)并想通过从 B 运行某些内容来尝试。他们的更改将不可见,因为 B:foo 依赖于以前下载的 A:one 的已发布 jar 工件,而不是Eclipse 项目“一”。这会使调试、验证等变得复杂。手动更新项目依赖项是短暂的 - 仅在下一次依赖项刷新之前。

【问题讨论】:

    标签: gradle gradle-eclipse


    【解决方案1】:

    安装了 Gradle IDE 插件的 Eclipse 有一个选项 Remap Jars to Gradle Projects

    Windows > Preferences > Gradle 对话框下。我个人不使用它,但它应该对你有用。

    【讨论】:

      猜你喜欢
      • 2013-01-16
      • 2017-10-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-12
      • 2018-11-10
      • 1970-01-01
      • 2015-08-22
      相关资源
      最近更新 更多