Android SDK 许可证问题阻止在 IntelliJ 中构建 LibGDX 项目
Android SDK license issue prevents build of LibGDX project in IntelliJ
重新安装 Windows 10 后,我拼命地尝试将我的 LibGDX 项目再次添加到 IntelliJ 中的 运行。由于 Android SDK 许可证问题,它不会构建。
我重新安装了 Android Studio 和我之前在项目中使用的 Android SDK 27,但我收到以下错误消息:
A problem occurred configuring project ':android'.
Failed to install the following Android SDK packages as some licences have not been accepted.
platform-tools Android SDK Platform-Tools
patcher;v4 SDK Patch Applier v4
platforms;android-27 Android SDK Platform 27
build-tools;27.0.3 Android SDK Build-Tools 27.0.3
emulator Android Emulator
tools Android SDK Tools
我发现以下线程有很多建议的修复:
所以我了解到我必须运行
%ANDROID_HOME%/tools/bin/sdkmanager --licenses
一开始没用,因为文件/users/MYUSERNAME/.android/repositories.cfg
不见了。我在那个路径上创建了一个空文件,再次 运行 sdkmanager
并接受了所有许可。但是,在 IntelliJ 中构建我的 LibGDX 项目时,我仍然遇到相同的错误。
以下是我尝试解决此问题的方法:
- 运行
sdkmanager --licenses
具有管理员权限
- 运行
sdkmanager --update
而不是 --licenses
- 安装了 Android 命令行工具并改用
sdkmanager
批处理文件
- 确保
%ANDROID_HOME%\licenses
文件夹存在并包含许可文件
- 确保我的机器上没有安装我不知道的另一个 Android SDK -
ANDROID_HOME
和 ANDROID_SDK_ROOT
(我读到前者已过时)环境变量指向同一文件夹,该文件夹也在 Android Studio SDK 管理器中配置为 Android SDK 位置 和 Android 我的 IntelliJ 项目设置中的 SDK 主路径
- 选择AndroidStudio自带的JRE作为我机器上的标准Java运行时间环境(通过设置
JAVA_HOME
到C:\Program Files\Android\Android Studio\jre
)
- 卸载了随 Android Studio 自动安装的 API 30 SDK,所以我只剩下 API 27
- 尝试使用 API 30 SDK 而不是 API 27,方法是在我的 LibGDX 项目
android\build.gradle
文件中配置它
- 已卸载 Android Studio,删除 SDK 文件夹并重新安装所有内容
- 已将
yes | sdkmanager --licenses
添加到我的 gradlew.bat
None 这些似乎有帮助。当我再次 运行 sdkmanager --licenses
时,响应是
All SDK package licenses accepted.
但 IntelliJ 一直在说相反的话。
我不知道如何解决这个问题。任何帮助将不胜感激。
问题很可能是由于过时的 Gradle 版本与某些其他依赖项不兼容,可能是 Android SDK。我通过将我的项目迁移到最新的 LibGDX 版本 (1.9.11
) 来解决它。
我的游戏不会 运行 使用 gradle/wrapper/gradle-wrapper.properties
(版本 5.4.1
)中配置的 Gradle 包装器,因为我收到了另一条错误消息(”无法打开 cp_init 重新映射 class 缓存),所以我切换到最新的 Gradle 版本,这是本地安装的 (6.5.1
): Settings -> Build, Execution, Deployment -> Build Tools -> Gradle -> Use Gradle from: Specified location
我还从 30
下载了 Android API 到 29
,因为这是推荐用于 LibGDX 1.9.11
的版本。但是,我不必再使用命令行工具来接受许可证。
重新安装 Windows 10 后,我拼命地尝试将我的 LibGDX 项目再次添加到 IntelliJ 中的 运行。由于 Android SDK 许可证问题,它不会构建。
我重新安装了 Android Studio 和我之前在项目中使用的 Android SDK 27,但我收到以下错误消息:
A problem occurred configuring project ':android'. Failed to install the following Android SDK packages as some licences have not been accepted. platform-tools Android SDK Platform-Tools patcher;v4 SDK Patch Applier v4 platforms;android-27 Android SDK Platform 27 build-tools;27.0.3 Android SDK Build-Tools 27.0.3 emulator Android Emulator tools Android SDK Tools
我发现以下线程有很多建议的修复:
所以我了解到我必须运行
%ANDROID_HOME%/tools/bin/sdkmanager --licenses
一开始没用,因为文件/users/MYUSERNAME/.android/repositories.cfg
不见了。我在那个路径上创建了一个空文件,再次 运行 sdkmanager
并接受了所有许可。但是,在 IntelliJ 中构建我的 LibGDX 项目时,我仍然遇到相同的错误。
以下是我尝试解决此问题的方法:
- 运行
sdkmanager --licenses
具有管理员权限 - 运行
sdkmanager --update
而不是--licenses
- 安装了 Android 命令行工具并改用
sdkmanager
批处理文件 - 确保
%ANDROID_HOME%\licenses
文件夹存在并包含许可文件 - 确保我的机器上没有安装我不知道的另一个 Android SDK -
ANDROID_HOME
和ANDROID_SDK_ROOT
(我读到前者已过时)环境变量指向同一文件夹,该文件夹也在 Android Studio SDK 管理器中配置为 Android SDK 位置 和 Android 我的 IntelliJ 项目设置中的 SDK 主路径 - 选择AndroidStudio自带的JRE作为我机器上的标准Java运行时间环境(通过设置
JAVA_HOME
到C:\Program Files\Android\Android Studio\jre
) - 卸载了随 Android Studio 自动安装的 API 30 SDK,所以我只剩下 API 27
- 尝试使用 API 30 SDK 而不是 API 27,方法是在我的 LibGDX 项目
android\build.gradle
文件中配置它 - 已卸载 Android Studio,删除 SDK 文件夹并重新安装所有内容
- 已将
yes | sdkmanager --licenses
添加到我的gradlew.bat
None 这些似乎有帮助。当我再次 运行 sdkmanager --licenses
时,响应是
All SDK package licenses accepted.
但 IntelliJ 一直在说相反的话。
我不知道如何解决这个问题。任何帮助将不胜感激。
问题很可能是由于过时的 Gradle 版本与某些其他依赖项不兼容,可能是 Android SDK。我通过将我的项目迁移到最新的 LibGDX 版本 (1.9.11
) 来解决它。
我的游戏不会 运行 使用 gradle/wrapper/gradle-wrapper.properties
(版本 5.4.1
)中配置的 Gradle 包装器,因为我收到了另一条错误消息(”无法打开 cp_init 重新映射 class 缓存),所以我切换到最新的 Gradle 版本,这是本地安装的 (6.5.1
): Settings -> Build, Execution, Deployment -> Build Tools -> Gradle -> Use Gradle from: Specified location
我还从 30
下载了 Android API 到 29
,因为这是推荐用于 LibGDX 1.9.11
的版本。但是,我不必再使用命令行工具来接受许可证。