如何从命令行启动Android SDK的Image Asset Studio?启动报错求助
解决命令行运行Image Asset Studio的错误
错误原因分析
你遇到的两个错误本质是同一个问题:asset-studio-26.0.0-dev.jar不是可独立运行的JAR包——它既没有在MANIFEST文件中声明主类,也依赖SDK工具库中的其他JAR才能运行。直接用java jar文件名或java -jar命令都会因为缺少依赖或找不到主类而失败。
解决方案
要正确运行Image Asset Studio,需要将tools/lib目录下的所有JAR包加入类路径,然后指定它的主类执行:
直接执行命令(任选其一):
- 进入lib目录后运行:
cd ~/android/tools/lib java -cp "*.jar" android.tools.lib.assetstudio.AssetStudioMain - 在主目录直接运行:
java -cp "$HOME/android/tools/lib/*.jar" android.tools.lib.assetstudio.AssetStudioMain
- 进入lib目录后运行:
验证主类正确性
如果上述命令报“找不到主类”,可以通过以下命令查看JAR包中的主类信息:jar tf ~/android/tools/lib/asset-studio-26.0.0-dev.jar | grep Main输出结果中类似
android/tools/lib/assetstudio/AssetStudioMain.class的路径,将斜杠替换为点就是完整主类名:android.tools.lib.assetstudio.AssetStudioMain。
脚本化简化操作
为了避免每次输入长命令,可以创建一个可执行脚本:
- 创建
asset-studio.sh文件:touch ~/asset-studio.sh - 编辑脚本内容:
#!/bin/bash SDK_LIB="$HOME/android/tools/lib" java -cp "$SDK_LIB/*.jar" android.tools.lib.assetstudio.AssetStudioMain "$@" - 添加执行权限:
chmod +x ~/asset-studio.sh - 之后直接运行脚本即可打开Image Asset Studio:
~/asset-studio.sh
额外检查
- 确保
tools组件完整,若依赖JAR缺失,重新安装:sdkmanager "tools" - 确认当前Java版本为8,可通过
java -version验证。
内容的提问来源于stack exchange,提问作者Noscere
相关产品推荐
相关产品推荐

