Gradle:Gradle使用javadocs安装

Gradle:Gradle使用javadocs安装,java,gradle,Java,Gradle,我正在使用Gradlemaven插件来构建一个用于另一个无关项目的人工制品。除了builded.jar人工制品之外,我还想在它旁边生成并安装-javadoc.jar人工制品 使用gradle clean build javadoc install在本地构建文件中生成javadoc,并将构建的构件安装到本地存储库中,但它目前没有在其旁边构建和安装-javadoc.jar 在Gradle中有没有办法使用maven或javadoc插件来实现这一点?我不介意编写一个自定义任务来完成它,但如果存在,我宁愿

我正在使用Gradle
maven
插件来构建一个用于另一个无关项目的人工制品。除了builded.jar人工制品之外,我还想在它旁边生成并安装-javadoc.jar人工制品

使用
gradle clean build javadoc install
在本地构建文件中生成javadoc,并将构建的构件安装到本地存储库中,但它目前没有在其旁边构建和安装-javadoc.jar

在Gradle中有没有办法使用
maven
javadoc
插件来实现这一点?我不介意编写一个自定义任务来完成它,但如果存在,我宁愿使用“官方支持”的方式

build.gradle文件:


javadoc是由
javadoc
任务生成的(我认为您错误地将其称为插件)。在运行
build
install
时,默认情况下不会执行此任务。此外,您还需要定义一个
jar
任务来绑定javadocs,并通过将其添加到
artifacts{…}
块来告诉构建发布该工件

task javadocJar(type: Jar) {
    classifier = 'javadoc'
    from javadoc
}   

artifacts {
    archives javadocJar
}
运行
install
应该创建javadoc jar并将其发布到maven local。此外,运行
uploadArchives
会将该工件发布到任何配置的存储库中


编辑:更新以添加javadoc
jar
task的定义。

好问题。。。我确实让我的build.gradle文件来做这件事,但我不明白为什么它们能工作……谢谢。这有助于解决问题。唯一的问题是javadoc任务没有生成Jar人工制品(在我使用的Gradle版本中:2.2.1),所以我不得不引入一个定制任务来生成javadoc Jar。是的,很抱歉。我已经更新了我的答案,以反映需要创建一个额外的
jar
任务。
task javadocJar(type: Jar) {
    classifier = 'javadoc'
    from javadoc
}   

artifacts {
    archives javadocJar
}