UE4 Android打包类似报错解决:cmd.exe failed with args

Posted OldDeer00

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了UE4 Android打包类似报错解决:cmd.exe failed with args相关的知识,希望对你有一定的参考价值。

版本

UE4.27.2 ,android Studio4.0,Window系统

报错内容

ERROR: cmd.exe failed with args  / .......

Execution failed for task ':app:compileDebugJavaWithJavac'

> Compilation failed; see the compiler error output for details.

解决办法

该类型的报错是泛用的,有关JAVA的相关报错,红字基本会给出cmd.exe failed with args,很难凭这行报错找出问题

报错日志往上翻,找到 * What went wrong: ,该行的下两行才是真正的报错内容。

个人的情况,具体报错为 

Execution failed for task ':app:compileDebugJavaWithJavac',

> Compilation failed; see the compiler error output for details.

该问题是UE4选择的JDK版本和系统环境变量的JDK版本不一致导致的,要么修改UE4选择的JDK版本,要么修改系统环境变量。

前者:编辑->项目设置->Android SDK->Location of JAVA,选择与自己环境变量相同的JDK目录,并且转到 编辑->项目设置->Android中,需要重新点击 立即配置 。

后者:打开系统环境变量,在系统变量里找到 JAVA_HOME ,编辑修改成UE4选择的JDK版本;找到Path,双击打开,找到 C:\\Program Files (x86)\\Common Files\\Oracle\\Java\\javapath 这一行,复制地址,在文件夹中打开,将其中的3个JAVA文件删除。最后打开CMD,输入 java -version测试是否已经更换完成。

建议:如果是用Android Studio安装的SDK,在Android Studio的安装目录下会自带jre,版本都改成这个就行.

其他

报错 :app:assembleDebug UE4打包Android项目出现cmd.exe failed with args /c "*\\rungradle.bat" :app:assembleDebug报错的解决方法 - 知乎 (zhihu.com)

Gradle报错情况

JAVA版本太高会导致Gradle报错,已知JAVA17必定打包失败报错,只能降低系统JDK版本。

UE4打包报错"Assertion failed: PerInstanceRenderData.IsValid()"

---------------------------------------------------------------未完----------------------------------------------------------------------

在将旧工程从UE4.22升级到4.23后,打包工程时提示:Assertion failed: PerInstanceRenderData.IsValid()。

可能引起的原因是有些资源丢失、但多数可能是因为Level中的资源引起的。

解决此类报错最直接的还是查看日志提示,从日志中便可以看出一些相关的信息,然后在按提示去找相关路径的资源看是否有错。

技术图片

 

==============================================================================================================================================

解决完打包编译报错后还得开始解决运行时报错的问题。。。

技术图片

 

以上是关于UE4 Android打包类似报错解决:cmd.exe failed with args的主要内容,如果未能解决你的问题,请参考以下文章

UE4打包报错"Assertion failed: PerInstanceRenderData.IsValid()"

UE4 Android打包 问题 记录笔记

ue4 怎样发布android

ue4 怎样发布android

Android Studio打包报错OutOfMemoryError解决方案

ue4创建c++类时报错是啥原因?