Gradle “配置渐变”;maven publish";直接从我的自定义插件插件
我是gradle的新手,想创建一个自定义的gradle插件,应用于Gradle “配置渐变”;maven publish";直接从我的自定义插件插件,gradle,maven-publish,Gradle,Maven Publish,我是gradle的新手,想创建一个自定义的gradle插件,应用于maven publishplugin。另外,我的插件应该配置maven publish插件,以便其他插件用户不做任何事情。我的插件将自动配置maven publish。 我试图找到任何相同的教程,但没有找到。 如何从自定义插件配置maven publishgradle插件?从自定义插件配置其他插件非常常见。你应该能够引用任何自定义插件的例子。具体来说,对于maven publish,我创建了以下示例: import org.gr
maven publish
plugin。另外,我的插件应该配置maven publish
插件,以便其他插件用户不做任何事情。我的插件将自动配置maven publish
。
我试图找到任何相同的教程,但没有找到。
如何从自定义插件配置
maven publish
gradle插件?从自定义插件配置其他插件非常常见。你应该能够引用任何自定义插件的例子。具体来说,对于maven publish
,我创建了以下示例:
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"));
});
});
});
}
}
import org.gradle.api.Plugin;
导入org.gradle.api.Project;
导入org.gradle.api.publish.PublishingExtension;
导入org.gradle.api.publish.maven.maven出版物;
导入org.gradle.api.publish.maven.plugins.MavenPublishPlugin;
导入java.net.URI;
公共类MyPlugin实现插件{
@凌驾
公开作废申请(项目){
project.getPluginManager().apply(MavenPublishPlugin.class);
project.getExtensions().configure(PublishingExtension.class,publishing->{
publishing.repositories(存储库->{
repositories.maven(maven->{
maven.setUrl(URI.create(“https://my-publishing-repo.com"));
});
});
出版。出版物(出版物->{
publications.create(“mavenJava”,MavenPublication.class,mavenJava->{
工件(project.getTasks().named(“bootJar”);
});
});
});
}
}
这相当于Gradle构建文件(Kotlin DSL)中的以下内容:
插件{
`马文出版社`
}
出版{
存储库{
马文{
url=uri(“https://my-publishing-repo.com")
}
}
出版物{
创建(“mavenJava”){
工件(tasks.named(“bootJar”).get())
}
}
}
请参阅我的指南中的以下指南:
- --用于生成Gradle插件项目
plugins {
`maven-publish`
}
publishing {
repositories {
maven {
url = uri("https://my-publishing-repo.com")
}
}
publications {
create<MavenPublication>("mavenJava") {
artifact(tasks.named("bootJar").get())
}
}
}