Joe*_*tra 4 java gradle maven-3 gradle-plugin
在 Java 中开发 Gradle 插件所需的确切依赖是什么?理想情况下,我想从众所周知的存储库(例如 Maven Central 或类似存储库)中获取它。
我有一个具有核心功能的 Maven 项目,我刚刚添加了两个额外的插件,一个用于 Ant,一个用于 Maven。它们已经过测试和工作;简单!现在,我想为 Gradle 插件添加第三个模块,以使任何 Gradle 项目也可以使用此功能。
但是,我找不到开发 Gradle 插件所需的确切依赖项。
Gradle 文档(例如https://docs.gradle.org/current/userguide/java_gradle_plugin.html)至少可以说写得不是很好。他们提到:
gradleAPI()
依赖java-gradle-plugin
依赖但他们很不清楚......没有组,没有版本(真的吗?)。
如果有人能启发我从哪里获得这些依赖项,我将非常感激。
Gradle 的公共和内部 API,又名gradleApi()
,与 Gradle 发行版捆绑在一起,不是独立发布的,因此不容易被 Maven 构建使用。有待处理的史诗#1156(通过允许用户依赖 gradlePublicApi() 来确保插件跨版本兼容性)可能会有所帮助。
由于 Gradle 插件最好使用 Gradle 构建,因此一个实用的解决方案是从 Maven 调用 Gradle 构建并将生成的工件附加到 Maven 构建。Andres Almiray ( aalmiray ) 曾在博客文章Running Gradle Inside Maven(Web Archive Link)中描述了这一点。他描述了以下高级步骤:
module
(例如gradle-plugin
)并将其附加到父POMgradle-plugin
为您的core
模块添加依赖项。使用maven-dependency-plugin将依赖项存储到 Maven 构建文件夹,例如target/dependencies
.build.gradle
,添加一个指向target/dependencies
(步骤 2)的 Maven 存储库,并让它依赖于core
模块以及gradleApi()
. 实现 Gradle 插件。示例项目可在此处找到(gradle-in-maven)。
归档时间: |
|
查看次数: |
1326 次 |
最近记录: |