我编写了一个jar任务来从Android库项目创建一个jar文件。在早期版本的工作室中,jar任务工作正常,但在最近的版本中,我看到发生了一些惊人的事情并且在过去几个小时内让我大吃一惊。
我的任务
task clearJar(type: Delete) {
delete 'build/libs/my_jar_name.jar'
}
task buildJarFile(type: Jar) {
from('build/intermediates/bundles/release')
into('build/libs')
include('classes.jar')
rename ('classes.jar', 'my_jar_name.jar')
}
buildJarFile.dependsOn(clearJar, build)
它正在做的事情让我感到惊讶。是在指定的文件夹build/libs
下创建一个jar,如“my_module_name.jar”,而不是我指定的。我通过将它重命名为.zip来解压缩该jar,我发现原始jar位于zip文件夹中,其名称是我提供的(my_jar_name.jar)以及META-INF目录。
喜欢
my_module_name.jar /建造/库/ META-INF
my_module.jar /建造/库/ my_jar_name.jar
我不明白为什么会这样。