关于Android Studio导出为jar包的问题
在AndroidStudio导出Jar包时遇到的问题
话不多说,直接进主题
问题一:
gradlew : 无法将“gradlew”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正
确,然后再试一次
方法一:
这个地方是权限不够,直接改成./gradlew makeJar回车即可
方法二:
用管理员权限打开命令提示符,cd到此项目的位置,然后gradlew makeJar即可
问题二:
FAILURE: Build failed with an exception.
An exception occurred applying plugin request [id: ‘com.android.application’]
Failed to apply plugin ‘com.android.internal.application’.
Android Gradle plugin requires Java 11 to run. You are currently using Java 1.8.
这个是因为版本太高了,只需要改一下客户端版本,在build.gradle(project)文件中将原来的高版本改成如下就好了
dependencies {
classpath 'com.android.tools.build:gradle:4.1.1'
}
问题三:
按照网上的指示,明明显示导出成功了,在libs文件下却找不到导出的jar包
这是网上给的教程代码
task makeJar(type: Copy) {
//这行表示要打包的文件的路径,根据下面的内容,其实是该路径下的classes.jar
//这里注意下,网上很多人都说在intermediates/bundles目录下,但是比较新版本的AS该目录下intermediates/packaged-classes替换intermediates/bundles了,本人AS4.0
from('build/intermediates/packaged-classes/release/')
//这行表示打包完毕后包的生成路径,也就是生成的包存在哪
into('build/libs/')
//看到这行,如果你对分包有了解的话,你就可以看出来这行它只是将一些类打包了
include('classes.jar')
//重命名为mySdk.jar
rename ('classes.jar', 'mySdk.jar')
}
首先切换到project视图,按照form方法中的路径寻找
你会发现找不到form方法中的文件,这时候你就要自己找,找找这些文件,看看哪个文件中包含了classes.jar文件
然后将form中的路径换成这个文件就好了,记得再看一下你的into方法中的位置,我的稍作修改了一下
task makeJar(type: Copy) {
//删除存在的
delete 'build/libs/JZBell.jar'
//设置拷贝的文件
from('build/intermediates/runtime_library_classes_jar/release/')
//打进jar包后的文件目录
into('libs/')
//将classes.jar放入build/libs/目录下
//include ,exclude参数来设置过滤
//(我们只关心classes.jar这个文件)
include('classes.jar')
//重命名
rename ('classes.jar', 'JZBell.jar')
}
makeJar.dependsOn(build)
大功告成!接下来只需要继续gradlew makeJar就好了
更多推荐
所有评论(0)