如何将工程的jar打包成jar
在module的build.gralde,加入,此配置是与android标签平级
def _BASENAME = "打包的名字";
def _VERSION = "版本好";
def _DestinationPath = "build"; //生成jar包的位置
def zipFile = file('build/intermediates/packaged-classes/release/classes.jar');
task deleteBuild(type:Delete){
delete _DestinationPath + _BASENAME + _VERSION + ".jar"
}
task makeJar(type:Jar){
from zipTree(zipFile)
from fileTree(dir:'src/main',includes:['assets/**']) //将assets目录打入jar包
from fileTree(dir:'src/main',includes:['AndroidManifest.xml']) //将AndroidManifest文件打入jar包
// from(project.zipTree("libs/test.jar")) // 将第三方jar包打入工程
baseName = _BASENAME + _VERSION
destinationDir = file(_DestinationPath)
}
makeJar.dependsOn(deleteBuild, build)
如果只是打包main目录的java文件,只用将
from fileTree(dir:'src/main',includes:['AndroidManifest.xml']) //将AndroidManifest文件打入jar包
这句话忽略,因为这句话是将清单文件打入jar包所使用的,如果需要压入依赖的jar包,
则加上 from(project.zipTree("libs/test.jar"))
注意点:
其中可能有个文件路径会无法找到,bundles如果没有则使用packaged-classes,使用前,先进行build一下
def zipFile = file('build/intermediates/bundles/default/classes.jar'); //待打包文件位置
def zipFile = file('build/intermediates/packaged-classes/release/classes.jar');//待打包文件位置