首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >直接从我的自定义插件配置gradle "maven-publish“插件

直接从我的自定义插件配置gradle "maven-publish“插件
EN

Stack Overflow用户
提问于 2020-05-10 14:07:07
回答 1查看 628关注 0票数 0

我是新的gradle,并希望创建自定义gradle插件,应用maven-publish插件。另外,我的插件应该配置maven-publish插件,以便其他插件用户不应该做任何事情。我的插件将自动配置maven-publish。我试图找到任何相同的教程,但没有找到。如何从我的自定义插件配置maven-publish gradle插件?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-05-10 14:29:10

从自定义插件中配置其他插件是非常常见的。你应该能够引用任何定制插件的例子。具体来说,对于maven-publish,我创建了以下示例:

代码语言:javascript
复制
import org.gradle.api.Plugin;
import org.gradle.api.Project;
import org.gradle.api.publish.PublishingExtension;
import org.gradle.api.publish.maven.MavenPublication;
import org.gradle.api.publish.maven.plugins.MavenPublishPlugin;

import java.net.URI;

public class MyPlugin implements Plugin<Project> {

    @Override
    public void apply(Project project) {
        project.getPluginManager().apply(MavenPublishPlugin.class);

        project.getExtensions().configure(PublishingExtension.class, publishing -> {
            publishing.repositories(repositories -> {
                repositories.maven(maven -> {
                   maven.setUrl(URI.create("https://my-publishing-repo.com"));
                });
            });
            publishing.publications(publications -> {
                publications.create("mavenJava", MavenPublication.class, mavenJava -> {
                    mavenJava.artifact(project.getTasks().named("bootJar"));
                });
            });
        });
    }

}

这相当于Gradle构建文件(Kotlin DSL)中的以下内容:

代码语言:javascript
复制
plugins {
    `maven-publish`
}

publishing {
    repositories {
        maven {
            url = uri("https://my-publishing-repo.com")
        }
    }
    publications {
        create<MavenPublication>("mavenJava") {
            artifact(tasks.named("bootJar").get())
        }
    }
}

请参阅我的指南中的下列指南:

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61713342

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档