当前位置:   article > 正文

android 命令行编译jar,Android Studio中gradle命令指定打jar包...

android gradle没有编译jar的按钮

近期在项目中需要对网络访问接口进行jar封装。

eclipse中进行指定类进行打jar包很简单,但是在android studio中则有点困难,其主要的原因是需要掌握gradle命令形式。接下来就直接上干货。

首先,在你需要进行分装jar的模块进行build.gradle文件下进行以下添加:

aa7036be144a

然后在Windos CMD中跳转到你的项目路径下,然后执行gradle makeJar命令,如果提示:gradle命令不可用。那么你需要在你的系统环境变量中进行变量的添加:

aa7036be144a

找到你的gradle插件路径进行添加,然后再在path属性的末尾进行

“;%GRADLE_HOME%\bin”添加。

aa7036be144a

然后输入 "gradle -v"或者"gradle -version"都可以.

aa7036be144a

如图就说明gradle配置成功了。

然后再cmd命令到你的项目路径下,然后再次输入gradle makeJar回车,

aa7036be144a

这里提示我们在我需要进行jar分装的模块出错了, 我们按照错误提示进行修改 ,在buold.gradle文件中添加

lintOptions {

abortOnErrorfalse

}

aa7036be144a

然后点击Sync Now。再次运行gradle makeJar。然后再一长串的编译后在末尾看到

aa7036be144a

然后我们在项目模块的build/libs文件夹下看到了我们命名的.jar文件

aa7036be144a

OK,到此就结束了。上面是个简单的例子,只能打包某个包下面的所有文件,如果要实现只打某个包下面的某些子包或者文件可参考如下示例:

taskmakeSdkJar(type:org.gradle.api.tasks.bundling.Jar){

baseName'pluginsdk'

//只打包org.cmdmac下的org.cmdmac.pluginsdk.impl和org.cmdmac.gamecenter,其他子包不会被打包进去

from('build/intermediates/classes/debug/org/cmdmac/'){

include'pluginsdk/impl'

include'gamecenter'

}

into('org/cmdmac/')

//    exclude('R.class')

//    exclude{ it.name.startsWith('R$');}

taskmakeSdkJar(type:org.gradle.api.tasks.bundling.Jar){

baseName'pluginsdk'

//只打包org.cmdmac下的org.cmdmac.pluginsdk.impl和org.cmdmac.gamecenter,其他子包不会被打包进去

from('build/intermediates/classes/debug/org/cmdmac/'){

include'pluginsdk/impl'

include'gamecenter'

}

into('org/cmdmac/')

//    exclude('R.class')

//    exclude{ it.name.startsWith('R$');}

}

其中感谢以下的作者:http://www.alloyteam.com/2015/03/shi-yong-gradle-da-bao-zhi-ding-bao-ming-he-lei-di-jar/

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/326902
推荐阅读
相关标签
  

闽ICP备14008679号