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()"