You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Android应用发布准备:keytool命令未识别问题求助

解决keytool未被识别的问题

这个问题我之前打包Flutter应用的时候也碰到过!本质是系统的环境变量里没包含JDK的bin目录,导致终端找不到keytool这个工具——它是JDK自带的签名工具,默认在JDK安装路径的bin文件夹里。

下面是具体的解决步骤:

  • 第一步:找到JDK的bin目录路径
    如果你是用Android Studio自带的JDK,路径大概是:C:\Program Files\Android\Android Studio\jre\bin;如果是自己单独装的JDK,路径一般是C:\Program Files\Java\jdk[你的版本号]\bin(比如C:\Program Files\Java\jdk1.8.0_301\bin)。

  • 第二步:添加到系统PATH环境变量

    1. 右键「此电脑」→ 选择「属性」→ 点击「高级系统设置」
    2. 在弹出的窗口里切换到「高级」标签,点击「环境变量」
    3. 在「系统变量」列表里找到PATH,双击它进入编辑界面
    4. 点击「新建」,把刚才找到的bin目录路径粘贴进去,然后依次点击「确定」保存所有窗口的修改
  • 第三步:重启终端/VS Code
    环境变量的修改需要重启终端才会生效,所以把当前打开的VS Code终端、Flutter控制台都关掉,重新打开后再试。

  • 验证是否成功
    打开新的终端,输入命令:

    keytool -version
    

    如果能正常显示keytool的版本信息,就说明配置成功了,这时再执行你的签名命令就不会报错了。

如果临时不想改环境变量,也可以直接用keytool的完整路径来执行命令,比如:

"C:\Program Files\Android\Android Studio\jre\bin\keytool.exe" -genkey -v -keystore ~/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key

不过还是建议添加PATH,以后用到其他JDK工具(比如javac)也不用再重复输路径啦。

内容的提问来源于stack exchange,提问作者Jordan Foster

火山引擎 最新活动