android - 尝试构建 Android Unity 游戏时出现 Android SDK 错误
问题描述
当我尝试构建 Unity 项目(Android)时,它说:
CommandInvokationFailure:无法更新 SDK。请手动运行 SDK 管理器,以确保您安装了最新的工具集和所需的平台。
以下是我试图解决的问题:
添加
sdk/tool/bin
到路径。然后从cmd,我尝试cd ~\tools\bin
然后输入sdkmanager.bat
,但它给了我:错误:无法找到或加载主类 Projects\Android 原因:java.lang.ClassNotFoundException: Projects\Android
从Android Studio去配置,下载sdk平台16-29,所有sdk工具。
我仍然无法解决问题。我错过了什么吗?还是我在这里做错了什么?
我正在使用 Windows 10。
解决方案
看起来您正在使用两个不同的 Android SDK 实例。Android Studio 使用C:\Users\user\AppData\Local\Android\Sdk
的一个 ( ) 和您尝试在 Unity 中使用的一个 ( C:\Unity Projects\Android SDK\tempToolsDir\
)。
存在关于在带有空格的路径中使用 Android SDK 的已知问题/警告。当您尝试sdkmanager.bat
手动运行时,您会收到与此相关的错误。(空格会导致路径被分成多个参数,这就是为什么它会显示关于找不到名为 Projects\Android 的类的错误。)
我的建议是将 Unity 中使用的 sdk 位置更改为 Android Studio 使用的路径,或者至少是不包含空格的路径。
推荐阅读
- c - Eclipse C 不会显示任何错误
- linux - 错误:在 CENT OS7 上安装 laravel 5.7 时无法访问此站点
- javascript - 动态创建的复选框,检查事件监听器
- c - '{' 标记之前的错误预期表达式
- airflow - 气流:在周中触发每周工作
- c# - UPDATE 语句与 EF Core 中的 FOREIGN KEY 约束冲突
- python - 奇怪的日期格式需要放入正确的 Python 格式
- laravel - Laravel 5.6 - Passport JWT httponly cookie SPA 身份验证用于自用 API?
- git - 如何从远程仓库中删除特定提交
- weblogic - Hydra 与 Weblogic 用于测试凭据