You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

运行bat脚本时路径引号异常导致命令执行错误的求助

问题分析与解决办法

问题根源

你遇到的双引号嵌套报错,核心原因是apktool.bat里的java_exe变量赋值与后续调用逻辑冲突:

  • 当JAVA_HOME环境变量存在时,脚本给java_exe赋值时额外加了双引号:set java_exe="%JAVA_HOME%\bin\java.exe";
  • 后续执行命令时又用"%java_exe%"包裹变量,导致最终生成嵌套双引号的路径(比如""C:\Program Files\bin\java.exe""),系统解析时会错误截断路径,出现""C:\Program' 不是内部或外部命令的提示。

解决步骤

修改apktool.bat中的JAVA_HOME判断代码块,去掉赋值时的多余引号:

原代码片段:

if defined JAVA_HOME (
set java_exe="%JAVA_HOME%\bin\java.exe"
)

修改为:

if defined JAVA_HOME (
set java_exe=%JAVA_HOME%\bin\java.exe
)

原理说明

后续load阶段的执行命令"%java_exe%"已经会为路径添加双引号,所以变量本身不需要再自带引号。修改后,若JAVA_HOME路径包含空格(如C:\Program Files),最终会生成正确的单双引号包裹路径:"C:\Program Files\bin\java.exe",彻底避免嵌套引号引发的解析错误。

验证

保存修改后的apktool.bat,重新执行apktool d test.apk,即可正常运行APK解码命令。

内容的提问来源于stack exchange,提问作者picup 30296

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 12:54:21