我想从多个目录复制一个 .Jar 文件:
这样两个目录中的所有 .class 文件都 bundle 到一个 .jar 文件中,这可能吗?
task makeJar(type: Copy)
from('directory1') && (directory2)
into('another directory')
include('classes.jar')
我可以像这样从一个目录复制:
task makeJar(type: Copy)
from('directory1')
into('another directory')
include('classes.jar')
最佳答案
对于 Android:
命令:
gradlew jarDebug / gradlew jarRelease
代码:
android.libraryVariants.all { variant ->
task("jar${variant.name}", type: Jar) {
description "Bundles compiled .class files into a JAR file for $variant.name."
dependsOn variant.javaCompile
from variant.javaCompile.destinationDir
exclude '**/R.class', '**/R$*.class', '**/R.html', '**/R.*.html'
}
}
来源: https://stackoverflow.com/a/19967914/950427
Java 或 Android 项目:
task makeJar(type: Copy) {
from('directory1/')
from('directory2/')
into('another directory/')
include('classes.jar')
}
类似: https://stackoverflow.com/a/19037807/950427
示例:
task initConfig(type: Copy) {
from('src/main/config') {
include '**/*.properties'
include '**/*.xml'
filter(ReplaceTokens, tokens: [version: '2.3.1'])
}
from('src/main/config') {
exclude '**/*.properties', '**/*.xml'
}
from('src/main/languages') {
rename 'EN_US_(.*)', '$1'
}
into 'build/target/config'
exclude '**/*.bak'
includeEmptyDirs = false
with dataContent
}
来源: http://gradle.org/docs/current/dsl/org.gradle.api.tasks.Copy.html
关于java - Android gradle从多个目录复制到一个.jar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29944206/