module的build.cs文件里的bPrecompile要设置为true

当以二进制方式发布插件时,对于4.22.0(不包括4.22.0)之后的版本,需要显式的设置
 bPrecompile = true
然后对插件进行package操作,这样在插件的Intermediate目录中会生成对应的.precompiled文件,该文件用于指明obj文件。 发布后,还需要设置:
 bUsePrecompiled = true
这样,用户端就能直接Link precompiled文件中指明的obj了,不依赖插件源码来打包。
 在UE4.27里经过实测:package出来的Plugins,可以删除Intermediate目录,可以删除Binaries目录下的pdb文件,在module.build.cs里需要添加bUsePrecompiled=true;如此操作后,即便在visual studio里rebuild工程,也不会将插件rebuild,因此是安全的,但是rebuild操作会将插件Binaries目录下的dll文件删除,因此rebuild后需要将这些被删除的dll还原,无需其他操作。且整个过程中bPrecompile字段不是必须的。但与此同时,在保持这些设置的前提下,对整个工程进行打包时,又会提示找不到precompiled manifest文件,因此针对打包工程的需求,仍然需要插件的Intermediate目录。
ModuleFiles属性文档
Target属性文档

UE4.20开始,包括UE4.20发布二进制插件

 bUsePrecompiled = true;

UE5插件打包和售卖