Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8FAILURE: Build failed with an exception.

unity 导出APK时报错:

echo %JAVA_TOOL_OPTIONS%

目前的解决办法是:

打开报错的位置路径:

C:\Users\A\.gradle\caches\jars-9\9ed3c2a3c3707d7a41a2c08fc5588489\gradle-7.1.2.jar.

删除文件夹中的:gradle-7.1.2.jar

删除后重新打包完成

Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8 Warning: Mapping new ns http://schemas.android.com/repository/android/common/02 to old ns http://schemas.android.com/repository/android/common/01 Warning: Mapping new ns http://schemas.android.com/repository/android/generic/02 to old ns http://schemas.android.com/repository/android/generic/01 Warning: Mapping new ns http://schemas.android.com/sdk/android/repo/addon2/02 to old ns http://schemas.android.com/sdk/android/repo/addon2/01 Warning: Mapping new ns http://schemas.android.com/sdk/android/repo/repository2/02 to old ns http://schemas.android.com/sdk/android/repo/repository2/01 Warning: Mapping new ns http://schemas.android.com/sdk/android/repo/sys-img2/02 to old ns http://schemas.android.com/sdk/android/repo/sys-img2/01 注: 某些输入文件使用或覆盖了已过时的 API。 注: 有关详细信息, 请使用 -Xlint:deprecation 重新编译。 注: D:\WorkSpace\TavernWars2020_4399_Android\client\UnityProject\Temp\gradleOut\unityLibrary\src\main\java\com\unity3d\player\UnityPlayerActivity.java使用或覆盖了已过时的 API。 注: 有关详细信息, 请使用 -Xlint:deprecation 重新编译。 FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':launcher:processReleaseResources'. > A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade > Android resource linking failed C:\Users\姜鹏\.gradle\caches\transforms-2\files-2.1\18397abbc229bedff14257f78e687686\kssdk-ad-3.3.67.1\res\values\values.xml:310:5-316:11: AAPT: error: style attribute 'attr/colorPrimary (aka game.taptap.tavernwars2:attr/colorPrimary)' not found. C:\Users\姜鹏\.gradle\caches\transforms-2\files-2.1\18397abbc229bedff14257f78e687686\kssdk-ad-3.3.67.1\res\values\values.xml:310:5-316:11: AAPT: error: style attribute 'attr/colorPrimaryDark (aka game.taptap.tavernwars2:attr/colorPrimaryDark)' not found. C:\Users\姜鹏\.gradle\caches\transforms-2\files-2.1\18397abbc229bedff14257f78e687686\kssdk-ad-3.3.67.1\res\values\values.xml:310:5-316:11: AAPT: error: st
最新发布
03-13
### UnityJAVA_TOOL_OPTIONS 环境变量的影响 在开发环境中设置 `JAVA_TOOL_OPTIONS` 变量会影响 Java 应用的行为,即使是在使用 Unity 这样的 C# 开发平台时也不例外。当此环境变量被检测到并应用 `-Dfile.encoding=UTF-8` 参数时,这通常是为了确保文件编码的一致性和正确性[^3]。 然而,在某些情况下,Unity 构建过程中可能会间接依赖于 Java 工具链(例如构建 Android APK 或者 AAB 文件)。如果存在不兼容或者配置不当的情况,则可能导致意外行为或错误。具体来说: - **影响**:该选项强制指定了 JVM 的默认字符集为 UTF-8 编码方式。对于大多数现代项目而言这是推荐的做法,因为它可以避免因本地化差异而导致的数据损坏问题。但是,它也可能引发一些潜在的问题,比如与特定版本 JDK 不匹配引起的类加载失败等问题。 - **解决方案**: - 如果发现因为设置了 `JAVA_TOOL_OPTIONS=-Dfile.encoding=UTF-8` 而出现了异常情况,尝试临时移除这个环境变量再重新启动 Unity Editor 来验证是否解决了问题。 - 对于持续集成服务器或其他自动化脚本中需要保持一致性的场景下,考虑将此参数显式地加入到项目的 Gradle 配置或者其他相关的地方而不是依靠全局环境变量来传递给子进程使用的做法更为稳健可靠。 ```bash export JAVA_TOOL_OPTIONS="" ``` 上述命令可以在 shell 终端执行前清除当前 session 下的 `JAVA_TOOL_OPTIONS` 设置;而在 Windows PowerShell 上则应使用如下语句实现相同效果: ```powershell $env:JAVA_TOOL_OPTIONS = "" ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值