Packaging an Engine plugin fails if another Engine plugin lists that plugin as a private dependency. In the two attached plugins, PluginA lists PluginB as a required plugin in its .uplugin file, and has PluginB listed as a private dependency in its Build.cs file. Attempting to package PluginB results in the package process failing with a somewhat confusing error message. The error message states that Engine module PluginA (which is not being packaged) should not depend on game module PluginB (which is an Engine plugin, not a game plugin).
Attempting to package PluginA completes successfully.
REGRESSION:
No. A separate issue prevented this plugin from being packaged in 4.20. That was fixed in 4.21 which made this issue visible.
Note: This repro includes two custom Engine plugins. The same behavior can be seen in 4.21 when attempting to package the MagicLeap plugin.
REPRO:
RESULT:
The packaging process fails with the following error message: ERROR: Engine module 'Engine\Plugins\PluginA\Source\PluginA\PluginA.Build.cs' should not depend on game module 'C:\Plugins\PluginB\HostProject\Plugins\PluginB\Source\PluginB\PluginB.Build.cs' (in this case C:\Plugins is the location I was packaging the plugin to)
EXPECTED:
The plugin packages successfully.
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-66403 in the post.
7 |
Component | UE - Foundation - Cpp Tools - Plugin System |
---|---|
Affects Versions | 4.21, 4.22 |
Created | Nov 12, 2018 |
---|---|
Resolved | Aug 18, 2021 |
Updated | Aug 18, 2021 |