Unity:构建失败,无法更新SDK
Unity: Build failure, unable to update the SDK
Unity 最新更新 2018.3
SDK 工具和平台已根据 SDK 管理器进行更新。
正在尝试构建和 运行 Android 构建设置。
更新 SDK 后,Unity 仍然要求我通过按软件内置的按钮来更新 SDK。在我这样做之后它告诉我:
Unable to update the SDK. Please run the SDK Manager manually to make
sure you have the latest set of tools and the required platforms
installed. See console log for details.
当我查看控制台时,它告诉我:
CommandInvokationFailure: Unable to update the SDK. Please run the SDK Manager manually to make sure you have the latest set of tools and the required platforms installed.
C:\Program Files (x86)\Android\android-sdk\tempToolsDir\bin\sdkmanager.bat --sdk_root=C:\Program Files (x86)\Android\android-sdk tools platform-tools "build-tools;28.0.3"
stderr[
Error: Failed to find package Files
Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8
]
stdout[
]
exit code: 1
UnityEditor.Android.Command.WaitForProgramToRun (UnityEditor.Utils.Program p, UnityEditor.Android.Command+WaitingForProcessToExit waitingForProcessToExit, System.String errorMsg) (at <e1c3953b4cf040ddb1400046b1c34897>:0)
UnityEditor.Android.Command.RunWithStdin (System.Diagnostics.ProcessStartInfo psi, System.String errorMsg, System.Collections.Generic.IEnumerable`1[T] input) (at <e1c3953b4cf040ddb1400046b1c34897>:0)
UnityEditor.Android.AndroidSDKTools.RunAndroidSdkTool (System.String toolName, System.String arguments, System.Boolean updateCommand, System.String errorMsg, System.String toolsDir) (at <e1c3953b4cf040ddb1400046b1c34897>:0)
UnityEditor.Android.AndroidSDKTools.UpdateSDK (UnityEditor.Android.AndroidJavaTools javaTools) (at <e1c3953b4cf040ddb1400046b1c34897>:0)
UnityEditor.Android.PostProcessor.Tasks.CheckAndroidSDK+SDKComponentDetector.Update (UnityEditor.Android.AndroidSDKTools sdkTools, UnityEditor.Android.AndroidJavaTools javaTools, System.Version minVersion, UnityEditor.Android.PostProcessor.ProgressHandler onProgress) (at <e1c3953b4cf040ddb1400046b1c34897>:0)
UnityEditor.Android.PostProcessor.Tasks.CheckAndroidSDK.EnsureSDKComponentVersion (UnityEditor.Android.AndroidJavaTools javaTools, System.Version minVersion, UnityEditor.Android.PostProcessor.Tasks.CheckAndroidSDK+SDKComponentDetector detector) (at <e1c3953b4cf040ddb1400046b1c34897>:0)
UnityEditor.Android.PostProcessor.Tasks.CheckAndroidSDK.Execute (UnityEditor.Android.PostProcessor.PostProcessorContext context) (at <e1c3953b4cf040ddb1400046b1c34897>:0)
UnityEditor.Android.PostProcessor.PostProcessRunner.RunAllTasks (UnityEditor.Android.PostProcessor.PostProcessorContext context) (at <e1c3953b4cf040ddb1400046b1c34897>:0)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)
我已经手动更新了SDK,那里也报错了。我用这个技巧修复了它:
无论如何,我 运行 与管理员的 Unity,我 运行 与管理员的 cmd 用于手动更新,但它仍然无法构建。需要帮助,谢谢。
SCREENSHOT: Unity SDK Update for Android build
尝试将 Android SDK 安装到某个不需要管理员权限即可访问的文件夹中(例如 C:\SDKs\android-sdk
)。它对我有用。
我在尝试更新我的 android sdk 时遇到了类似的问题,并通过手动 运行ning sdk 管理器修复了它。在我的 Unity Editor 控制台中,它打印出一份长长的许可协议以及告诉我该怎么做的错误。
首先,如果它不存在,请在您的 .android 文件夹中创建一个空的 repositories.cfg 文件。对我来说,该文件位于 C:\Users\myuser\.android
接下来,运行 sdkmanager.bat 在命令提示符中这样(您的结果和路径可能因您的 Unity 版本而异)。
"C:\Program Files\Unity\Hub\Editor19.2.13f1\Editor\Data\PlaybackEngines\AndroidPlayer\SDK\tools\bin\sdkmanager.bat" "platforms;android-29"
然后我可以按 y 并接受许可。
对我有用的是找到“sdkmanager.bat”文件夹,从那里启动具有管理员权限的命令提示符,然后输入以下命令:
.\sdkmanager "platform-tools" "platforms;android-29"
Android构建失败[2019.3.6f1]:无法更新SDK
CommandInvokationFailure:无法更新SDK。请手动 运行 SDK 管理器以确保您安装了最新的工具集和所需的平台。
/Users/yogesh/Library/android-sdk/tempToolsDir\bin\sdkmanager.bat --sdk_root=/Users/yogesh/Library/Android/sdk 工具 platform-tools "build-tools;28.0.3"
我通过下载 Android SDK 工具解决了这个问题,下载了我想要的 SDK 版本,然后将该版本拖到 Unity 存储其 SDK 版本的地方(如果您已经下载了任何版本的话) .
我更改了 Android 的默认位置,但是如果您找到您的文件夹,那么版本在平台下,您可以将所需的版本拖到:
"C:\ProgramFiles\Unity\Hub\Editor20.1.1f1\Editor\Data\PlaybackEngines\AndroidPlayer\SDK\platforms"
但该路径会根据您拥有的 Unity 版本以及存储 Unity 的驱动器而改变。确保在 "preferences>external tools"
下的 Unity 编辑器中 "Android SDK tools installed with Unity"
已 打开 。无论如何,祝你好运,我花了好几个小时才弄明白。
我 运行 解决了这个问题,并通过定义 'JAVA_HOME' 环境变量来修复它,这是 Unity sdkmanager.bat 到 运行 所必需的。此后,Unity 能够按预期从 Unity 内部无缝安装。
Unity 最新更新 2018.3
SDK 工具和平台已根据 SDK 管理器进行更新。
正在尝试构建和 运行 Android 构建设置。
更新 SDK 后,Unity 仍然要求我通过按软件内置的按钮来更新 SDK。在我这样做之后它告诉我:
Unable to update the SDK. Please run the SDK Manager manually to make sure you have the latest set of tools and the required platforms installed. See console log for details.
当我查看控制台时,它告诉我:
CommandInvokationFailure: Unable to update the SDK. Please run the SDK Manager manually to make sure you have the latest set of tools and the required platforms installed.
C:\Program Files (x86)\Android\android-sdk\tempToolsDir\bin\sdkmanager.bat --sdk_root=C:\Program Files (x86)\Android\android-sdk tools platform-tools "build-tools;28.0.3"
stderr[
Error: Failed to find package Files
Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8
]
stdout[
]
exit code: 1
UnityEditor.Android.Command.WaitForProgramToRun (UnityEditor.Utils.Program p, UnityEditor.Android.Command+WaitingForProcessToExit waitingForProcessToExit, System.String errorMsg) (at <e1c3953b4cf040ddb1400046b1c34897>:0)
UnityEditor.Android.Command.RunWithStdin (System.Diagnostics.ProcessStartInfo psi, System.String errorMsg, System.Collections.Generic.IEnumerable`1[T] input) (at <e1c3953b4cf040ddb1400046b1c34897>:0)
UnityEditor.Android.AndroidSDKTools.RunAndroidSdkTool (System.String toolName, System.String arguments, System.Boolean updateCommand, System.String errorMsg, System.String toolsDir) (at <e1c3953b4cf040ddb1400046b1c34897>:0)
UnityEditor.Android.AndroidSDKTools.UpdateSDK (UnityEditor.Android.AndroidJavaTools javaTools) (at <e1c3953b4cf040ddb1400046b1c34897>:0)
UnityEditor.Android.PostProcessor.Tasks.CheckAndroidSDK+SDKComponentDetector.Update (UnityEditor.Android.AndroidSDKTools sdkTools, UnityEditor.Android.AndroidJavaTools javaTools, System.Version minVersion, UnityEditor.Android.PostProcessor.ProgressHandler onProgress) (at <e1c3953b4cf040ddb1400046b1c34897>:0)
UnityEditor.Android.PostProcessor.Tasks.CheckAndroidSDK.EnsureSDKComponentVersion (UnityEditor.Android.AndroidJavaTools javaTools, System.Version minVersion, UnityEditor.Android.PostProcessor.Tasks.CheckAndroidSDK+SDKComponentDetector detector) (at <e1c3953b4cf040ddb1400046b1c34897>:0)
UnityEditor.Android.PostProcessor.Tasks.CheckAndroidSDK.Execute (UnityEditor.Android.PostProcessor.PostProcessorContext context) (at <e1c3953b4cf040ddb1400046b1c34897>:0)
UnityEditor.Android.PostProcessor.PostProcessRunner.RunAllTasks (UnityEditor.Android.PostProcessor.PostProcessorContext context) (at <e1c3953b4cf040ddb1400046b1c34897>:0)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)
我已经手动更新了SDK,那里也报错了。我用这个技巧修复了它:
无论如何,我 运行 与管理员的 Unity,我 运行 与管理员的 cmd 用于手动更新,但它仍然无法构建。需要帮助,谢谢。
SCREENSHOT: Unity SDK Update for Android build
尝试将 Android SDK 安装到某个不需要管理员权限即可访问的文件夹中(例如 C:\SDKs\android-sdk
)。它对我有用。
我在尝试更新我的 android sdk 时遇到了类似的问题,并通过手动 运行ning sdk 管理器修复了它。在我的 Unity Editor 控制台中,它打印出一份长长的许可协议以及告诉我该怎么做的错误。
首先,如果它不存在,请在您的 .android 文件夹中创建一个空的 repositories.cfg 文件。对我来说,该文件位于 C:\Users\myuser\.android
接下来,运行 sdkmanager.bat 在命令提示符中这样(您的结果和路径可能因您的 Unity 版本而异)。
"C:\Program Files\Unity\Hub\Editor19.2.13f1\Editor\Data\PlaybackEngines\AndroidPlayer\SDK\tools\bin\sdkmanager.bat" "platforms;android-29"
然后我可以按 y 并接受许可。
对我有用的是找到“sdkmanager.bat”文件夹,从那里启动具有管理员权限的命令提示符,然后输入以下命令:
.\sdkmanager "platform-tools" "platforms;android-29"
Android构建失败[2019.3.6f1]:无法更新SDK
CommandInvokationFailure:无法更新SDK。请手动 运行 SDK 管理器以确保您安装了最新的工具集和所需的平台。 /Users/yogesh/Library/android-sdk/tempToolsDir\bin\sdkmanager.bat --sdk_root=/Users/yogesh/Library/Android/sdk 工具 platform-tools "build-tools;28.0.3"
我通过下载 Android SDK 工具解决了这个问题,下载了我想要的 SDK 版本,然后将该版本拖到 Unity 存储其 SDK 版本的地方(如果您已经下载了任何版本的话) .
我更改了 Android 的默认位置,但是如果您找到您的文件夹,那么版本在平台下,您可以将所需的版本拖到:
"C:\ProgramFiles\Unity\Hub\Editor20.1.1f1\Editor\Data\PlaybackEngines\AndroidPlayer\SDK\platforms"
但该路径会根据您拥有的 Unity 版本以及存储 Unity 的驱动器而改变。确保在 "preferences>external tools"
下的 Unity 编辑器中 "Android SDK tools installed with Unity"
已 打开 。无论如何,祝你好运,我花了好几个小时才弄明白。
我 运行 解决了这个问题,并通过定义 'JAVA_HOME' 环境变量来修复它,这是 Unity sdkmanager.bat 到 运行 所必需的。此后,Unity 能够按预期从 Unity 内部无缝安装。