如何用gradle构build源代码jar
我正在用一个用gradle构build的开源项目。 我想生成一个(项目)-sources.jar文件,我可以加载到我的IDE(IntelliJ IDEA)和debugging通过项目。 我知道如何加载文件,如果我可以生成它。
我已经查看了项目的可用gradle任务,没有一个生成源jar文件。
为这个项目生成源代码jar文件最简单的方法是什么?
将源代码添加到包含已编译类文件的jar文件中也可以。
task sourcesJar(type: Jar, dependsOn: classes) { classifier = 'sources' from sourceSets.main.allSource } task javadocJar(type: Jar, dependsOn: javadoc) { classifier = 'javadoc' from javadoc.destinationDir } artifacts { archives sourcesJar archives javadocJar }
如果您使用Android:
task sourcesJar(type: Jar) { from android.sourceSets.main.java.srcDirs classifier = 'sources' } task javadoc(type: Javadoc) { source = android.sourceSets.main.java.srcDirs classpath += project.files(android.getBootClasspath().join(File.pathSeparator)) } task javadocJar(type: Jar, dependsOn: javadoc) { classifier = 'javadoc' from javadoc.destinationDir } artifacts { archives javadocJar archives sourcesJar }
从这里
如果您希望将源代码添加到已编译的类JAR文件中 ,您也可以接受这一点,那么可以轻松完成。 只需将以下内容添加到您的构build文件。 你可以从理论上看到,把源代码放到一个单独的JAR中是非常类似的:
jar { from sourceSets.main.allSource }
不同之处在于你通过用“jar”代替sourcesJar来将它添加到主JAR文件中。
这应该工作
assemble.dependsOn 'propertyJar' task propertyJar(type: Jar) { archiveName = "myJarName.jar" from('src/main/resources') { include '**' }}
- 通过Gradle进行testing时logging
- 自动增加带有gradle额外属性的VersionCode
- 与依赖'com.android.support:support-annotations'冲突。 应用程序(23.1.0)和testing应用程序(23.0.1)的已解决版本不同
- Android Studio和Gradle生成错误
- 如何在Intellij IDEA 13.0.1社区中创build基于Gradle的Java项目
- 在Android Gradle项目中复制APK文件
- 当proguard被激活时,Gradle失败
- 如何在Android Studio(Gradle)中添加apache commons集合
- 无法find方法android()的参数