我在Eclipse中有一个带有Maven的项目库,生成的jar里面包含了一些库依赖项。 现在我正在迁移到Android Studio,我想构建相同的jar。我可以在gradle中生成一个带有以下行的jar:
task clearJar(type: Delete) {
delete 'build/libs/mysdk.jar'
}
task makeJar(type: Copy) {
from('build/intermediates/bundles/release/')
into('release/')
include('classes.jar')
rename ('classes.jar', 'mysdk.jar')
}
makeJar.dependsOn(clearJar, build)
但是在jar中没有包含我在项目库中使用的库。使用Maven,我可以使用"提供的"范围,以便在我的罐子中包含或不包含库但是使用gradle ...我该怎么做?
由于
答案 0 :(得分:12)
解决了以下任务:
task jarTask(type: Jar) {
baseName="my-sdk-android"
from 'src/main/java'
}
task createJarWithDependencies(type: Jar) {
baseName = "my-sdk-android-jar-with-dependencies"
from {
configurations.compile.collect {
it.isDirectory() ? it : zipTree(it)
}
}
with jarTask
}
configurations {
jarConfiguration
}
artifacts {
jarConfiguration jarTask
}