问题标签 [multi-project]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
547 浏览

groovy - gradle 中的项目特定配置注入

我在 gradle 中构建了多项目。现在我正在通过以下方式将任务注入每个项目

除了遍历所有项目并按名称选择项目之外,还有其他更好的选择吗?我无法使用“项目”方法让它工作,因为项目方法拒绝接受列表。

0 投票
1 回答
1055 浏览

gradle - Gradle:谁应该声明多项目依赖项:根或子项目

我喜欢用 gradle 建立一个通常的多项目构建。项目结构如下所示:

正如您可能猜到的那样,域取决于共享,而网络取决于共享和域。

有两种方式来描述这种依赖关系:

  1. 指定所有子项目的依赖关系root/build.gradle
  2. 指定每个子项目的依赖项root/{sub_project}/build.gradle

我更喜欢第二种选择,因为项目应该知道它的依赖关系。这种方法有什么问题吗?我问是因为在互联网和 gradle 文档中找到的大多数示例都使用方法 1。

0 投票
4 回答
70993 浏览

android - 需要来自另一个目录的 Gradle 项目

我有一个这样的目录/项目设置:

Logger是一个使用 Gradle 的 Android 库项目。MyProject是一个标准的 Android 项目项目,需要使用Logger库。

我正在使用 Android Studio 并尝试将Logger添加到外部库。虽然这在开发过程中有效,但我收到有关在构建时找不到类的消息。

我对 Gradle 完全陌生,但在MyProject的 build.gradle 中尝试了以下操作:

0 投票
2 回答
718 浏览

c# - 当设置通过另一个更改时,如何通知应用程序

我有两个项目 A 和 B。其中项目 A 是系统托盘应用程序,项目 B 是主应用程序。当用户更改项目 B 的设置时,项目 A 需要自行更新。我如何通知项目 A 发生的变化?

我曾尝试使用全局事件,但这需要在应用程序 B 启动时创建应用程序 A 的新实例。

0 投票
2 回答
15143 浏览

dependencies - Gradle multiproject 定义对根项目的依赖

我有一个多项目 gradle 构建,以这种方式配置:

我想在root/build.gradle所有嵌套项目的依赖项中声明,这是文件:

但是当我执行构建时,我有:

评估根项目“代码”时出现问题。

可能的解决方案:模块(java.lang.Object)

我做错了什么?

0 投票
1 回答
2060 浏览

configuration - 所有配置对项目的 Gradle 依赖项

我正在考虑使用 Gradle 而不是 Ant/Ivy。我正在尝试为所有配置在我的项目之间创建依赖关系,例如,project1.compile取决于project2.compileproject1.runtime取决于project2.runtime等。

在 Ivy 中,我使用以下 XML 执行此操作:

项目1/ivy.xml

在 Gradle 中,这是我尝试过的:

项目1/build.gradle

但它抱怨该project功能不存在:

任何想法如何做到这一点?

0 投票
2 回答
1114 浏览

sbt - sbt 根据子项目中的测试给出“配置不公开”

我有一个 sbt 多项目构建,它在本地运行良好。它使用外部常春藤设置文件,在我的机器上,我将 sbt 项目间解析器添加到我的常春藤设置文件中。但是,当我在 Jenkins 上构建时,我想分别构建每个子项目,以便我可以独立发布每个子项目。所以在 Jenkins 服务器上,我没有在 ivy 设置文件中包含项目间解析器。

问题是,我的主要子项目配置project/Build.scala为:

我得到以下异常:

是否可以有一个在两种情况下都适用的构建文件?

0 投票
2 回答
401 浏览

dependencies - Gradle:如何在多项目脚本中对依赖项进行分组?

我们的 Gradle 脚本由根 "war" 项目和多个 (10+) 子 "jar" 项目组成。每个 JAR 项目都依赖于许多 (30-60) 个 JAR。部分示例:

我想避免每个组件都有如此长的重复依赖项列表。应该有一种方法来对依赖项进行分组,例如“freehep”、“commons”、“apacheds”、“abdera”、“dwr”,并且每个组件都会引用这些组。

0 投票
1 回答
6977 浏览

gradle - 如何告诉 gradle 构建依赖项目的档案并将其上传到本地 maven

我有一个多项目问题,Gradle 的文档没有任何信息(也无法在 stackoverflow 上找到)。任何帮助/指导将不胜感激。

这是我的项目布局:

  • 项目LeftArm:生成一个 jar 文件
  • 项目RightArm:生成一个 jar 文件
  • 项目AllArms:依赖于项目LeftArmRightArm并生成一个war文件

当我在AllArms项目中运行“gradle build uploadArchives”时,它会构建LeftArmRightArm项目,但不会将jar文件(由LeftArmRightArm项目生成)上传到本地 Maven 存储库。

这是我的build.gradle文件:

...

...

0 投票
1 回答
877 浏览

java - 多项目而不是子项目的 Gradle 中间目录

Gradle 多项目结构

在 RootProject 中,我有 build.grade 和 settings.gradle。common,subProj1 和 subProj2 是 settings.gradle 中的子项目

middleDir不是子项目!它仅用于对 subProj1、subProj2 进行分组,因为它们是相关的。

每次我在根目录中运行“gradle eclipse”时,我也会在 middleDir 中获得 .classpath 和 .project 文件,我不应该这样做,因为这不是子项目!所以基本上intermediateDir 被认为是某些任务的子项目,即使不在settings.gradle 中。有什么快速的方法吗?