多模块 gradle 构建 jar
Multimodule gradle build jar
我在 intellij 中有一个多模块 gradle 构建,其中父(java 独立 httpclient )项目包括一个使用 :-
的实用程序项目
implementation project (project-name)
里面 dependencies{
当我 运行 构建 gradle 时,在构建文件夹中创建的 jar 不包含 类 / 当我执行 jar tvf <jarname>.jar
但是,它在gradle工具window -> 任务 -> intellij 中的源集中作为子项目可见。
我可以将子项目包含在父 jar 中的一种方法是将其发布在 nexus 上,包括快照并创建一个 "jar" 任务。但是因为这偏离了多模块结构,所以不是一个可以接受的解决方案。
关于导入 jar 的任何指示?
PS :- 父项目不是 spring 应用程序,所以我不能使用 spring 依赖管理插件。
Gradle 将默认构建一个仅包含项目本身源代码的 JAR。该项目还提供元数据以了解它需要哪些依赖项。然后可以在发布到 Maven 或 Ivy 存储库时使用此元数据来填充相关的元数据文件。
这意味着消费者随后可以利用该信息来拉取依赖项及其传递依赖项。
您想要实现的是不同的,因为您希望将依赖项嵌入到 JAR 中。
你有不同的选择:
- 按the Gradle documentation做,需求简单
- 使用 third party plugin
您放入 JAR 中的具体内容将取决于您的具体用例。
我在 intellij 中有一个多模块 gradle 构建,其中父(java 独立 httpclient )项目包括一个使用 :-
的实用程序项目implementation project (project-name)
里面 dependencies{
当我 运行 构建 gradle 时,在构建文件夹中创建的 jar 不包含 类 / 当我执行 jar tvf <jarname>.jar
但是,它在gradle工具window -> 任务 -> intellij 中的源集中作为子项目可见。
我可以将子项目包含在父 jar 中的一种方法是将其发布在 nexus 上,包括快照并创建一个 "jar" 任务。但是因为这偏离了多模块结构,所以不是一个可以接受的解决方案。
关于导入 jar 的任何指示?
PS :- 父项目不是 spring 应用程序,所以我不能使用 spring 依赖管理插件。
Gradle 将默认构建一个仅包含项目本身源代码的 JAR。该项目还提供元数据以了解它需要哪些依赖项。然后可以在发布到 Maven 或 Ivy 存储库时使用此元数据来填充相关的元数据文件。 这意味着消费者随后可以利用该信息来拉取依赖项及其传递依赖项。
您想要实现的是不同的,因为您希望将依赖项嵌入到 JAR 中。 你有不同的选择:
- 按the Gradle documentation做,需求简单
- 使用 third party plugin
您放入 JAR 中的具体内容将取决于您的具体用例。