Search code examples
xamarinmonomonodevelopadd-inxamarin-studio

MonoDevelop.AddinMaker - 'MonoDevelop.Core,5.10' is disabled


I am working on an MonoDevelop Addin (using MonoDevelop.AddinMaker) within Tamarin Studio and MonoDevelop and everything was fine, till I needed to access the GTK# Toolbox to fix some existing GUI panels (originally from the CSharpBinding GUIs).

The GTK# Widget that is referenced in those panels are in MonoDevelop.Ide.dll, so I added that to the GTK# ToolBox and the widgets show up. But the build generates invalid partial classes due to missing widget reference (MonoDevelop.Ide) and that reference is not available via the AddinMaker's Addin References system so I added a manual assembly reference to MonoDevelop.Ide.dll.

Now the debugging of the Addin fails with:

ERROR [2015-11-22 11:47:39Z]: Add-in error (MonoDevelop.Ide,5.10): Add-in could not be loaded: The required addin 'MonoDevelop.Core,5.10' is disabled.
Mono.Addins.MissingDependencyException: The required addin 'MonoDevelop.Core,5.10' is disabled.
   at Mono.Addins.AddinEngine.ResolveLoadDependencies (System.Collections.ArrayList addins, System.Collections.Stack depCheck, System.String id, Boolean optional) in /Users/builder/data/lanes/2103/7c46a0b7/source/monodevelop/main/external/mono-addins/Mono.Addins/Mono.Addins/AddinEngine.cs:line 597
   at Mono.Addins.AddinEngine.ResolveLoadDependencies (System.Collections.ArrayList addins, System.Collections.Stack depCheck, System.String id, Boolean optional) in /Users/builder/data/lanes/2103/7c46a0b7/source/monodevelop/main/external/mono-addins/Mono.Addins/Mono.Addins/AddinEngine.cs:line 612
ERROR [2015-11-22 11:47:39Z]: Add-in error (MonoDevelop.Core,5.10): Disabled add-ins can't be loaded.
Loaded assembly: /Applications/Xamarin Studio.app/Contents/Resources/lib/monodevelop/bin/Mono.Addins.CecilReflector.dll [External]
Thread started:  #3
Unloaded assembly: /Applications/Xamarin Studio.app/Contents/Resources/lib/monodevelop/bin/Mono.Addins.CecilReflector.dll
Thread finished:  #3
System.InvalidOperationException: Extension node not found in path: /MonoDevelop/Core/WebCredentialProviders
   at Mono.Addins.ExtensionContext.GetExtensionObjects[T] (System.String path, Boolean reuseCachedInstance) in /Users/builder/data/lanes/2103/7c46a0b7/source/monodevelop/main/external/mono-addins/Mono.Addins/Mono.Addins/ExtensionContext.cs:line 636
   at Mono.Addins.ExtensionContext.GetExtensionObjects[T] (System.String path) in /Users/builder/data/lanes/2103/7c46a0b7/source/monodevelop/main/external/mono-addins/Mono.Addins/Mono.Addins/ExtensionContext.cs:line 607
   at Mono.Addins.AddinManager.GetExtensionObjects[T] (System.String path) in /Users/builder/data/lanes/2103/7c46a0b7/source/monodevelop/main/external/mono-addins/Mono.Addins/Mono.Addins/AddinManager.cs:line 630
   at MonoDevelop.Core.WebRequestHelper.Initialize () in /Users/builder/data/lanes/2103/7c46a0b7/source/monodevelop/main/src/core/MonoDevelop.Core/MonoDevelop.Core/WebRequestHelper.cs:line 49
   at MonoDevelop.Core.Runtime.Initialize (Boolean updateAddinRegistry) in /Users/builder/data/lanes/2103/7c46a0b7/source/monodevelop/main/src/core/MonoDevelop.Core/MonoDevelop.Core/Runtime.cs:line 118
Starting Xamarin Studio
FATAL ERROR [2015-11-22 11:47:42Z]: Xamarin Studio failed to start. Some of the assemblies required to run Xamarin Studio (for example gtk-sharp)may not be properly installed in the GAC.
System.InvalidOperationException: Extension node not found in path: /MonoDevelop/Core/PlatformService
   at Mono.Addins.ExtensionContext.GetExtensionObjects (System.String path, System.Type arrayElementType, Boolean reuseCachedInstance) in /Users/builder/data/lanes/2103/7c46a0b7/source/monodevelop/main/external/mono-addins/Mono.Addins/Mono.Addins/ExtensionContext.cs:line 669
   at Mono.Addins.ExtensionContext.GetExtensionObjects (System.String path) in /Users/builder/data/lanes/2103/7c46a0b7/source/monodevelop/main/external/mono-addins/Mono.Addins/Mono.Addins/ExtensionContext.cs:line 534
   at Mono.Addins.AddinManager.GetExtensionObjects (System.String path) in /Users/builder/data/lanes/2103/7c46a0b7/source/monodevelop/main/external/mono-addins/Mono.Addins/Mono.Addins/AddinManager.cs:line 554
   at MonoDevelop.Ide.DesktopService.Initialize () in /Users/builder/data/lanes/2103/7c46a0b7/source/monodevelop/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide/DesktopService.cs:line 56
   at MonoDevelop.Ide.IdeStartup.Run (MonoDevelop.Ide.MonoDevelopOptions options) in /Users/builder/data/lanes/2103/7c46a0b7/source/monodevelop/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide/IdeStartup.cs:line 175
   at MonoDevelop.Ide.IdeStartup.Main (System.String[] args, MonoDevelop.Ide.Extensions.IdeCustomizer customizer) in /Users/builder/data/lanes/2103/7c46a0b7/source/monodevelop/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide/IdeStartup.cs:line 652

I removed the assembly reference, removed the GTK Toolbox MonoDevelop components/widget, etc.. but the problem persists.

MonoDevelop and Xamarin Studio run fine by themselves, so how do I re-enable(?) the MonoDevelop.Core addin in the AddinMaker Project?


Solution

  • I would try deleting the addin-db-002 directory (might be called something different) which is inside the directory of your addin's bin/Debug directory. – Matt Ward

    That was actually the problem, the addin-db-002 does not cleaned up on a Clean All, nor does it get a complete update on a Build All.

    So once you have a 'corrupt' list of addin's within the sub-dir of ./addin-data/1 they do not get re-created unless you manually delete the addin-db-002.