AS 打包jar 报Cannot expand ZIP

      首先在gradle下生成jar的方式网上很多讲的,命令如下

def _BASENAME = "TestJar";
def _VERSION = "_V1.0";
def _DestinationPath = "build"; //生成jar包的位置
def zipFile = file('build/intermediates/bundles/default/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包  
    baseName = _BASENAME + _VERSION
    destinationDir = file(_DestinationPath)
}

makeJar.dependsOn(deleteBuild, build)

在android studio3.x版本之前,我使用这个命令进行打包jar是没问题的,直到我更新了as版本后我再去通过makejar生成报错Cannot expand ZIP“xxxxxxxxxxrelease\classes.jar”as it does not exist。

        开始想着这种小问题肯定很多人遇到,随便百度下就完了,网上有的说需要降低as的gradle版本,这个我没试,看上去就不是什么好主意;还有的说右键,通过管理员身份启动as,在打包就可以了,我也试了,但是并不好使;所以我只能自己头疼了;

       摆脱了百度后,瞅瞅报错,说是class.jar找不到,为啥呢,我也不知道,但是我找到class.jar的位置,重新定义源文件路径应该能解决唄;事实果然如此,我在“build/intermediates/intermediate-jars/release/“这个路径下找到了class.jar,然后替换原来的打包命令

def zipFile = file('build/intermediates/intermediate-jars/release/classes.jar');

再执行makejar打包命令,问题解决。具体为什么生成的class.jar的路径会变,等我后续有时间查了之后再来更新。

        简单记录下问题的原因和处理方式,记录一下也提醒自己不要忘记去找问题发生的原因;然后感慨下:,遇到问题不要像无头苍蝇意义先去百度,到处去搜结果,在有余力的情况下,要自己先分析和尝试处理问题。当然,如果项目或者时间紧急还是建议先解决问题,再找问题原因和处理方向。

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Android编译过程中出现 "Cannot expand ZIP 'build\intermediates\intermediate-jars\release\classes.jar' as it does not exist" 错误的原因可能是以下几种: 1. 依赖项配置错误:该错误可能是由于项目的依赖项配置错误导致的。请检查项目的依赖项配置文件(如build.gradle)是否正确,并确保所有依赖项都正确添加。 2. 构建文件缺失或损坏:该错误可能是由于缺少或损坏的构建文件导致的。请确保项目的构建文件(如build.gradle)存在且正确配置,并且没有损坏的代码。 3. 构建目录错误:该错误可能是由于构建目录设置错误导致的。请检查项目的构建目录是否正确设置,并确保构建过程可以正常访问和写入构建目录。 4. 编译过程中出现其他错误:该错误可能是由于编译过程中出现其他错误导致的。请检查编译过程的日志输出,查找其他可能的错误消息或警告信息,并尝试解决这些问题。 对于这个具体的错误,你可以尝试以下解决方法: - 清理并重新构建项目:使用命令 `./gradlew clean` 清理项目,然后再次尝试构建项目。 - 检查依赖项配置:确保项目的依赖项配置正确,所有依赖项都正确添加,并且没有错误的版本冲突。 - 检查构建文件:检查项目的构建文件(如build.gradle)是否存在且正确配置,没有错误的代码。 - 确认构建目录设置:检查项目的构建目录是否正确设置,并且构建过程可以正常访问和写入构建目录。 - 查看其他编译错误:检查编译过程的日志输出,查找其他可能的错误消息或警告信息,并尝试解决这些问题。 如果以上方法仍然无法解决问题,可以提供更多关于项目配置和编译过程的信息,以便更准确地帮助你解决该问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值