【问题标题】:Unity Daydream APK Build failedUnity Daydream APK 构建失败
【发布时间】:2018-12-17 06:46:51
【问题描述】:

我无法使用 Unity 2018.2.17f1 构建 GoogleVRForUnity.unitypackage 项目。当我尝试构建时,我收到一条错误消息:

CommandInvokationFailure: Gradle build failed. 
C:/Program Files/Java/jdk1.8.0_191\bin\java.exe -classpath "C:\Program Files\Unity\Editor\Data\PlaybackEngines\AndroidPlayer\Tools\gradle\lib\gradle-launcher-4.2.1.jar" org.gradle.launcher.GradleMain "-Dorg.gradle.jvmargs=-Xmx4096m" "assembleRelease"

 stderr[

FAILURE: Build failed with an exception.

* Where:
Build file 'C:\Users\samu-\Desktop\Capacitaci�n �xito - copia\Temp\gradleOut\build.gradle' line: 22

* What went wrong:
A problem occurred evaluating root project 'gradleOut'.
> Failed to apply plugin [id 'com.android.application']
   Your project path contains non-ASCII characters. This will most likely cause the build to fail on Windows. Please move your project to a different directory. See http://b.android.com/95744 for details. This warning can be disabled by adding the line 'android.overridePathCheck=true' to gradle.properties file in the project directory.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

* Get more help at https://help.gradle.org

BUILD FAILED in 21s
]
stdout[
Starting a Gradle Daemon, 1 stopped Daemon could not be reused, use --status for details
Download https://dl.google.com/dl/android/maven2/com/android/tools/external/com-intellij/intellij-core/26.0.1/intellij-core-26.0.1.jar
]
exit code: 1
UnityEditor.Android.Command.WaitForProgramToRun (UnityEditor.Utils.Program p, UnityEditor.Android.WaitingForProcessToExit waitingForProcessToExit, System.String errorMsg)
UnityEditor.Android.Command.Run (System.Diagnostics.ProcessStartInfo psi, UnityEditor.Android.WaitingForProcessToExit waitingForProcessToExit, System.String errorMsg)
UnityEditor.Android.AndroidJavaTools.RunJava (System.String args, System.String workingdir, System.Action`1 progress, System.String error)
UnityEditor.Android.GradleWrapper.Run (UnityEditor.Android.AndroidJavaTools javaTools, System.String workingdir, System.String task, System.Action`1 progress)
Rethrow as GradleInvokationException: Gradle build failed
UnityEditor.Android.GradleWrapper.Run (UnityEditor.Android.AndroidJavaTools javaTools, System.String workingdir, System.String task, System.Action`1 progress)
UnityEditor.Android.PostProcessor.Tasks.BuildGradleProject.Execute (UnityEditor.Android.PostProcessor.PostProcessorContext context)
UnityEditor.Android.PostProcessor.PostProcessRunner.RunAllTasks (UnityEditor.Android.PostProcessor.PostProcessorContext context)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)

这另外 2 个错误:

Build completed with a result of 'Failed'
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)

还有:

UnityEditor.BuildPlayerWindow+BuildMethodException: 2 errors
  at UnityEditor.BuildPlayerWindow+DefaultBuildMethods.BuildPlayer (BuildPlayerOptions options) [0x0021f] in C:\buildslave\unity\build\Editor\Mono\BuildPlayerWindowBuildMethods.cs:187 
  at UnityEditor.BuildPlayerWindow.CallBuildMethods (Boolean askForBuildLocation, BuildOptions defaultBuildOptions) [0x0007f] in C:\buildslave\unity\build\Editor\Mono\BuildPlayerWindowBuildMethods.cs:94 
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)

如果有人知道发生了什么,我将不胜感激有关此问题的任何帮助

【问题讨论】:

  • Your project path contains non-ASCII characters. 解决这个问题,它应该可以正常工作

标签: java android unity3d gradle


【解决方案1】:
  • 其中:构建文件 'C:\Users\samu-\Desktop\Capacitaci�n �xito - copia\Temp\gradleOut\build.gradle' 行:22

  • 出了什么问题:评估根项目“gradleOut”时出现问题。

    无法应用插件 [id 'com.android.application'] 您的项目路径包含非 ASCII 字符。这很可能 导致构建在 Windows 上失败。请将您的项目移至 不同的目录。有关详细信息,请参阅http://b.android.com/95744。这 可以通过添加行来禁用警告 'android.overridePathCheck=true' 到 gradle.properties 文件中 项目目录。

如果你仔细观察这一行 "C:\Users\samu-\Desktop\ Capacitaci�n �xito - copia\Temp\gradleOut\build.gradle" 你的路径有某种ASCII 符号使其在构建时失败。

更改路径或将其命名为没有 ASCII 的名称并尝试重建它。它似乎无法破译 ASCII 字符并抛出错误。确保仅对构建路径使用英文字符。

这是您的错误所在link 中提到的引用:

稍微扩展上一个答案:Java 启动器不使用支持 Unicode(宽字符)的 Windows API,因此命令行参数会进行有损转换。看看“réseaux”这个名字会发生什么: - é 是 U+00E9(“带有锐音的拉丁小写字母 e”),其 UTF-8 编码为“c3 a9” - Java 启动器(在 dx 中)不知道这种编码,会将其解释为两个字节,其中 Ã 是 c3,© 是 a9(在 Latin-1 中是合理的),从而产生“réseaux”。


请检查此可能的重复项以获取更多信息information

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-09-09
    • 2022-01-14
    • 2023-04-04
    • 2021-03-09
    • 1970-01-01
    • 2021-07-16
    • 2018-10-03
    • 1970-01-01
    相关资源
    最近更新 更多