***.Build.cs文件中加了 bUsePrecompiled =true代码编译是会跳过编译,但是这样操作后Windows打包没问题,但是Android打包的时候在安卓编译阶段会报错
报错信息:
ERROR: Missing precompiled manifest for ‘TEST2’. This module was most likely not flagged for being included in a precompiled build - set ‘PrecompileForTargets = PrecompileTargetsType.Any;’ in TEST2.build.cs to override.
解决方法: 用RunUAT.bat手动编译该模块
步骤:
-
在引擎安装配置找到RunUAT.bat脚本
UE_4.25\Engine\Build\BatchFiles\RunUAT.bat //文件位置
在脚本目录下打开终端PowerShell 执行脚本
RunUAT.bat BuildPlugin -plugin="[ModuleDir]\[ModuleName].uplugin" -package="[TargetDir]"
以自己的测试项目为例,脚本运行参数:
./RunUAT.bat BuildPlugin -plugin="F:\MyProject\Plugins\TEST2\TEST2.uplugin" -package="F:\MyProject\Plugins\TEST2\Intermediate\Build"
- 运行脚本后,能看到编译了一遍模块,并且在目标目录生成了一个HostProject项目项目中只有插件
将HostProject\Plugins\TEST2\Intermediate 文件夹替换到自己项目中该模块的Intermediate文件夹
- 打包成功
测试版本:UE4.25、UE4.27
参考文章:https://zhuanlan.zhihu.com/p/578034935