Metadata object with the same name is defined in multiple assemblies
When following the installation instructions for upgrading Docentric (found here) it’s possible that you can run into an error that’s similar to the one below:
C:\DynamicsSDK\Metadata\Microsoft.Dynamics.AX.Application.Build.targets(40,5):
error : Error: AxClass/SysUserSetup_DC_Extension/Name
- Metadata object with the same name is defined in multiple assemblies:
'DocentricAXExtension,DocentricAX' [C:\DynamicsSDK\Metadata\BuildMetadata.proj]
This usually happens when promoting code from a DEV environment to a build pipeline environment, because some old artifacts are still on the build machine, while on the DEV machine they have been deleted, but source control doesn’t know to delete obsolete artifacts without an explicit delete commit.
So the solution is to explicitly delete these objects in source control on the branch that is being used to for the build pipeline.
The problematic object is located in the models mentioned in the last part of the error message, in this case DocentricAXExtension and DocentricAX:
The type of the object is mentioned in the second line of the error message:
If you have followed the upgrade instructions, your source control should have all the up-to-date objects checked-in at the same time, so to find the outdated object that is causing the problem, you should look for the one that has an old check-in date.
Here we can see that the outdated object is in the DocentricAXExtension model:
After deleting the offending object(s) you need to check in the changes to source control:
Now you can promote the code to the build machine and run your build pipeline and it should finish successfully!