Mac中配置gradle环境及使用android studio打包jar包与arr包的方法
作者:暮云清风 时间:2022-12-08 00:07:18
前言
在Mac中用android studio 导出jar包最重要的是需要配置gradle ,它包的导出也是通过gradle命令进行的。
所以,如果想成功打包,要先配置好gradle环境,这样你才可以在android studio中的terminal中直接使用gradle命令了。下面话不多说了,来一起看看详细的介绍吧。
gradle 环境变量的配置
1.这个配置和jdk的环境变量配置类似
启动终端,进入当前用户目录。
2.创建 .bash_profile 文件,如果已经有了就直接打开
3.用命令打开文件编辑 open -e .bash_profile
GRADLE_HOME=/Users/liuhai/.gradle/wrapper/dists/gradle-4.1-all/bzyivzo6n839fup2jbap0tjew/gradle-4.1 export GRADLE_HOME export PATH=$PATH:$GRADLE_HOME/bin
这里面要注意的是gradle_home 的路径可以自己定义,你可以网上下载最新的gradle,也可以用android studio自带的
如果你用自带的就是下面这样的,这里要注意android studio文件名中间有个空格,所以这里要用转义字符进行转义:
export GRADLE_HOME=/Applications/Android\ Studio.app/Contents/gradle/gradle-2.14.1 export PATH=$PATH:$GRADLE_HOME/bin
4.关闭保存.bash_profile文件
5.命令行输入 source .bash_profile
更新刚刚配置的环境变量
6.输入 gradle -version 验证配置是否正确,如果正确显示版本号就说明你配置正确。同时,在你的android studio terminal中输入这个命令应该也能显示正确的版本号,如果不行,请重启android studio ,还不行就重启电脑,再不行就检查你的配置,还不行就私信我,我教你。
如果你上面的成功配置了,那我们就开始打包了。
1.在你需要打包的module的builde.gradle文件中 将 apply plugin: 'com.android.application'
中的 application 改成 library ,并注释掉 applicationId 这一行
2.在build.gradle文件中添加下面类容(内容和android{……}模块平级,不要加到android 模块中去了):
task clearJar(type: Delete) {
delete 'libs/sdk.jar' //sdk是你自己jar包的名字,随便命名
}
task makeJar(type: org.gradle.api.tasks.bundling.Jar) {
baseName 'sdk' //指定生成的jar名
//从哪里打包class文件,这个是你module中生成的class文件,如果没有classes文件夹,不妨先运行下你的应用
from('build/intermediates/classes/debug/com/****/*****')
//打包到jar后的目录结构,这里建议直接用包名
into('com/*****/******')
exclude('test/', 'BuildConfig.class', 'R.class')//去掉不需要打包的目录和文件
exclude { it.name.startsWith('R'); }//去掉R开头的文件
}
makeJar.dependsOn(clearJar, build)
然后在android {……}模块中添加下面内容:
lintOptions {
abortOnError false
}
配置好后就直接在你的android studio 到terminal中输入 gradlew makeJar 命令,成功后你就可以在你的build/libs文件夹下看到你要的jar包了。同样到项目模块的buidl/outputs/aar文件夹下看到了我们的.aar文件
来源:https://www.jianshu.com/p/84e5460983c7
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
Java实现将彩色PDF转为灰度PDF的示例代码
![](https://img.aspxhome.com/file/2023/2/114062_0s.jpg)
java中struts2实现简单的文件上传与下载
spring中ioc是什么
![](https://img.aspxhome.com/file/2023/1/88081_0s.png)
C# 填充Excel图表、图例背景色的实例代码
![](https://img.aspxhome.com/file/2023/1/79041_0s.png)
C#利用VS中插件打包并发布winfrom程序
![](https://img.aspxhome.com/file/2023/6/91336_0s.jpg)
Java 滑动窗口最大值的实现
![](https://img.aspxhome.com/file/2023/2/121432_0s.png)
Android实现双曲线折线图
![](https://img.aspxhome.com/file/2023/2/85462_0s.jpg)
弹出一个带确认和取消的dialog实例
datagridview实现手动添加行数据
Docker环境下Spring Boot应用内存飙升分析与解决场景分析
![](https://img.aspxhome.com/file/2023/5/119795_0s.jpg)
Spring interceptor拦截器配置及用法解析
Spring Boot 入门教程
C#实现把txt文本数据快速读取到excel中
Minio与SpringBoot使用okhttp3问题解决
![](https://img.aspxhome.com/file/2023/1/83501_0s.jpg)
Android XML設置屏幕方向(android:screenOrientation)详解
如何解决springmvc文件下载,内容损坏的问题
![](https://img.aspxhome.com/file/2023/9/89959_0s.png)
maven为MANIFEST.MF文件添加内容的方法
C#使用前序遍历、中序遍历和后序遍历打印二叉树的方法
Mybatis动态调用表名和字段名的解决方法
浅谈Mybatis分页插件,自定义分页的坑
![](https://img.aspxhome.com/file/2023/2/108202_0s.jpg)