2014-02-20 83 views

回答

12

下面的代码添加到构建脚本:

task packageJavadoc(type: Jar, dependsOn: 'javadoc') { 
    from javadoc.destinationDir 
    classifier = 'javadoc' 
} 
task packageSources(type: Jar, dependsOn: 'classes') { 
    from sourceSets.main.allSource 
    classifier = 'sources' 
} 
artifacts { 
    archives packageJavadoc 
    archives packageSources 
} 

测试与摇篮1.10

+5

殴打它:p我还制作了'sourcesJar'(你称'packageSources'依赖于'classes';它避免了在源代码无法编译时生成源代码jar:p – fge

+0

谢谢@fge,我测试了你的建议并更新了答案WER –

2

保罗Fulgoni的回答用于为直到我碰到了我的摇篮版本3.1工作。要获得packageJavadoc任务与摇篮3.1工作,我发现我不得不做出点小文章,如下所示:

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

2017年,摇篮4.0版:

apply plugin: 'maven' 
apply plugin: 'maven-publish' 

publishing { 
    publications { 
     mavenJava(MavenPublication) { 
      from components.java 

      artifact sourceJar 
      artifact packageJavadoc 
     } 
    } 
} 

javadoc { 
    source = sourceSets.main.allJava 
    classpath = configurations.compileClasspath 

    options 
    { 
    setMemberLevel JavadocMemberLevel.PUBLIC 
    setAuthor true 

    links "https://docs.oracle.com/javase/8/docs/api/" 
    } 
} 

task sourceJar(type: Jar) { 
    classifier = 'sources' 
    from sourceSets.main.allJava 
} 

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

工程与gradle publishgradle publishToMavenLocal