【问题标题】:Gradle - SIngle with Multiple Jars into Maven RepositoryGradle - 将多个 jar 放入 Maven 存储库中
【发布时间】:2013-09-07 00:17:20
【问题描述】:

我有一个 Gradle 项目,它在构建时会根据某些规则(例如 A、B 和 C 类转到 A.jar、D、E 和 F 类转到 B.jar 等)创建多个 Jar 文件。

现在我想将这些 Jar 文件上传到 Maven 存储库中。虽然我能够做到,但我想将这些罐子中的每一个作为独立的工件放在 Maven 存储库中。

例如:现在如果我有一个名为 MyProject 的项目并且它产生了 2 个 Jar 文件:A.jar 和 B.jar,那么在 maven 存储库中我有以下结构

-------   Repo
          |
          |----com
               |
               |--- project
                    |
                    |---- MyProject
                          |
                          |---- version 1
                            | 
                            |--- A.jar
                            |--- B.jar 

但我想要以下结构

-------   Repo
          |
          |----com
               |
               |--- project
                    |
                    |---- MyProject
                          |
                          |---- A
                            | 
                            |--- Version 1
                              |
                              |--- A.jar
                            |---- B 
                            |
                            |---- Version 1
                               |
                               |--- B.jar

这意味着我想确保 A.jar 和 B.jar 都是 Maven 存储库中的两个不同的工件,以便我可以维护两个不同的版本。

现在,为了将这两个 jar 放入 maven 存储库,我确保在 build.gradle 中添加以下代码。

artifacts {
  archives A,B    
}

一种解决方案是让两个不同的 Gradle 项目包含相关的类,并且每个项目都产生自己的人工制品,但在我的情况下,这不是短期解决方案。我们已经计划了类似的事情,但优先级较低。

【问题讨论】:

    标签: maven gradle


    【解决方案1】:

    这一切都记录在Gradle User Guide 中。如果您使用的是“maven”插件,请参阅Multiple artifacts per project,如果您使用的是“maven-publish”插件,请参阅Publishing multiple modules

    【讨论】:

    • 对不起,我忘了提到我使用的是 gradle 版本 0.9.2,如果我错了,请纠正我 maven-publish 在该版本中不可用。
    • 这就是为什么我还提供了“maven”插件的链接。最好在 0.9.2 文档中查看:gradle.org/docs/0.9.2/userguide/… 不过你应该真的升级了。
    • 我已经在使用它,但不确定它如何帮助创建我提到的结构。我想它解释了你将如何上传多个工件并提到哪一个。
    • 如果你遵循“生成多个 pom”,你应该得到你提到的结构。
    猜你喜欢
    • 2015-04-24
    • 2014-05-31
    • 1970-01-01
    • 2015-10-22
    • 1970-01-01
    • 1970-01-01
    • 2015-07-18
    • 2018-05-23
    • 1970-01-01
    相关资源
    最近更新 更多