- Изменено
UE5 Support
The pre-built plugin triggers a rebuild on project launch in UE 5.0.3, which fails and suggests rebuilding from source. Recompiling via UAT with the included source produces the following errors before failing and exiting:
../SpinePlugin/Source/SpinePlugin/Public/SpineSkeletonDataAsset.h(43): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
../SpinePlugin/Source/SpinePlugin/Public/SpineSkeletonDataAsset.h(46): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
../SpinePlugin/Source/SpinePlugin/Public/SpineSkeletonDataAsset.h(49): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
../SpinePlugin/Source/SpinePlugin/Public/SpineSkeletonDataAsset.h(69): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
../SpinePlugin/Source/SpinePlugin/Public/SpineSkeletonDataAsset.h(72): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
../SpinePlugin/Source/SpinePlugin/Public/SpineSkeletonDataAsset.h(75): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
../SpinePlugin/Source/SpinePlugin/Public/SpineSkeletonDataAsset.h(78): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
../SpinePlugin/Source/SpinePlugin/Public/SpineSkeletonDataAsset.h(81): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
../SpinePlugin/Source/SpinePlugin/Public/SpineSkeletonDataAsset.h(84): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
../SpinePlugin/Source/SpinePlugin/Public/SpineSkeletonDataAsset.h(87): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
../SpinePlugin/Source/SpinePlugin/Public/SpineSkeletonAnimationComponent.h(55): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
../SpinePlugin/Source/SpinePlugin/Public/SpineSkeletonAnimationComponent.h(58): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
../SpinePlugin/Source/SpinePlugin/Public/SpineSkeletonAnimationComponent.h(61): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
../SpinePlugin/Source/SpinePlugin/Public/SpineSkeletonAnimationComponent.h(64): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
../SpinePlugin/Source/SpinePlugin/Public/SpineSkeletonAnimationComponent.h(67): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
../SpinePlugin/Source/SpinePlugin/Public/SpineBoneDriverComponent.h(43): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
../SpinePlugin/Source/SpinePlugin/Public/SpineBoneDriverComponent.h(46): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
../SpinePlugin/Source/SpinePlugin/Public/SpineBoneDriverComponent.h(50): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
../SpinePlugin/Source/SpinePlugin/Public/SpineBoneDriverComponent.h(53): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
../SpinePlugin/Source/SpinePlugin/Public/SpineBoneDriverComponent.h(56): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
../SpinePlugin/Source/SpinePlugin/Public/SpineBoneDriverComponent.h(59): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
../SpinePlugin/Source/SpinePlugin/Public/SpineBoneFollowerComponent.h(43): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
../SpinePlugin/Source/SpinePlugin/Public/SpineBoneFollowerComponent.h(46): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
../SpinePlugin/Source/SpinePlugin/Public/SpineBoneFollowerComponent.h(50): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
../SpinePlugin/Source/SpinePlugin/Public/SpineBoneFollowerComponent.h(53): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
../SpinePlugin/Source/SpinePlugin/Public/SpineBoneFollowerComponent.h(56): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
../SpinePlugin/Source/SpinePlugin/Public/SpineBoneFollowerComponent.h(59): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
../SpinePlugin/Source/SpinePlugin/Public/SpineAtlasAsset.h(46): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
That must be a new requirement in UE 5.0.3. I've added an issue here: https://github.com/EsotericSoftware/spine-runtimes/issues/2145
Tough to say, honestly. I've found some references to this error that date back as far as 2018, and the Marketplace compilation guide mentions it at the end of 2020, but when it actually pops up and breaks something seems inconsistent at best. For example:
On a side note: are you trying to publish a plugin on top of ours on the market place? We don't do that because our license is not compatible with what Epic wants. If you do that, you will have similar issues I'm afraid.
No no, nothing like that. That guide just happened to be one of the first results I got when I started looking into the error/when the category specifier became required.
I've been a Spine user for a while and never hit that particular issue when popping the plugin into a project or recompiling other plugins for new engine versions, so it got my curiosity going.
I've tried to reproduce this with spine-ue4 example project from the 4.1 branch and UE 5.0.3. Neither building the editor, not packaging the example results in the error you are getting.
Can you repro it with the example project or provide a project that lets me repro it on my end?
Sure. I'll try to get you something later this evening.
In the meantime, this is the general method I was using to recompile the plugin when the engine cried about the build version.
Using a fresh download from Git, and just launching the example project:
https://drive.google.com/file/d/1BF4tmv8hPbIEbC_QEro9igIN-_DMO0Bo/view?usp=sharing
Cheers, I see if I can repro with this.
Had some time, so I've uploaded some more items. DDC/Intermediate have been dropped from the project file to reduce size, and logs have been removed because they're leaky. I copied the relevant portions out to a text file, though.
https://drive.google.com/drive/folders/1h0ReoRRYwrpBVUbcetkQcr9PGiEVIrnB?usp=sharing