dsplaisted / strongnamer

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Mono.Cecil.AssemblyResolutionException: Failed to resolve assembly

tugberkugurlu opened this issue · comments

Getting this:

Error   4   The "StrongNamer.AddStrongName" task failed unexpectedly.
Mono.Cecil.AssemblyResolutionException: Failed to resolve assembly: 'Serilog, Version=1.3.0.0, Culture=neutral, PublicKeyToken=24c2f752a8e58a10'
   at Mono.Cecil.BaseAssemblyResolver.Resolve(AssemblyNameReference name, ReaderParameters parameters)
   at Mono.Cecil.DefaultAssemblyResolver.Resolve(AssemblyNameReference name)
   at Mono.Cecil.MetadataResolver.Resolve(TypeReference type)
   at Mono.Cecil.TypeReference.Resolve()
   at Mono.Cecil.Mixin.CheckedResolve(TypeReference self)
   at Mono.Cecil.MetadataBuilder.GetConstantType(TypeReference constant_type, Object constant)
   at Mono.Cecil.MetadataBuilder.AddConstant(IConstantProvider owner, TypeReference type)
   at Mono.Cecil.MetadataBuilder.AddParameter(UInt16 sequence, ParameterDefinition parameter, ParamTable table)
   at Mono.Cecil.MetadataBuilder.AddParameters(MethodDefinition method)
   at Mono.Cecil.MetadataBuilder.AddMethod(MethodDefinition method)
   at Mono.Cecil.MetadataBuilder.AddMethods(TypeDefinition type)
   at Mono.Cecil.MetadataBuilder.AddType(TypeDefinition type)
   at Mono.Cecil.MetadataBuilder.AddTypeDefs()
   at Mono.Cecil.MetadataBuilder.BuildTypes()
   at Mono.Cecil.MetadataBuilder.BuildModule()
   at Mono.Cecil.ModuleWriter.<BuildMetadata>b__0(MetadataBuilder builder, MetadataReader _)
   at Mono.Cecil.ModuleDefinition.Read[TItem,TRet](TItem item, Func`3 read)
   at Mono.Cecil.ModuleWriter.BuildMetadata(ModuleDefinition module, MetadataBuilder metadata)
   at Mono.Cecil.ModuleWriter.WriteModuleTo(ModuleDefinition module, Stream stream, WriterParameters parameters)
   at Mono.Cecil.ModuleDefinition.Write(Stream stream, WriterParameters parameters)
   at Mono.Cecil.ModuleDefinition.Write(String fileName, WriterParameters parameters)
   at StrongNamer.AddStrongName.ProcessAssembly(ITaskItem assemblyItem, StrongNameKeyPair key)
   at StrongNamer.AddStrongName.Execute()
   at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute()
   at Microsoft.Build.BackEnd.TaskBuilder.<ExecuteInstantiatedTask>d__20.MoveNext() Foo.Bar

Hi @tugberkugurlu,

Could you provide steps for how to reproduce this issue?

Thanks

@dsplaisted it's a bit hard to isolate as this was on an project which I cannot share details about 😞 I was hoping you would magically ✨ figure out what is wrong by going though the stack trace 😄

I'm trying to use this project with the nuget package "Hangfire". The first build is fine, every subsequent build fails with this message. If I delete the obj directory then everything builds fine. However in a classic TeamBuild (using the xaml build) I get this error everytime.

I have similar trace as above. I have a Windows Service project that references other NuGet packages of mine that are dependent on Hangfire:

Severity    Code    Description Project File    Line    Source  Suppression State
Error       The "StrongNamer.AddStrongName" task failed unexpectedly.
Mono.Cecil.AssemblyResolutionException: Failed to resolve assembly: 'Hangfire.Core, Version=1.6.0.0, Culture=neutral, PublicKeyToken=e33b67d3bb5581e4'

This should be fixed in version 0.0.2 of the package.

I get a similar error with v0.0.2 with the following trace:

The "StrongNamer.AddStrongName" task failed unexpectedly. [C:\Users\egger\Workspace\WeinCadSW\WeinCadSW\WeinCadSW.csproj]
Mono.Cecil.AssemblyResolutionException: Failed to resolve assembly: 'SolidWorks.Interop.swconst, Version=24.3.0.57, Culture=neutral, PublicKeyToken=19f43e188e4269d8' [C:\Users\egger\Workspace\WeinCadSW\WeinCadSW\WeinCadSW.csproj]
   at Mono.Cecil.BaseAssemblyResolver.Resolve(AssemblyNameReference name, ReaderParameters parameters) [C:\Users\egger\Workspace\WeinCadSW\WeinCadSW\WeinCadSW.csproj]
   at Mono.Cecil.BaseAssemblyResolver.Resolve(AssemblyNameReference name) [C:\Users\egger\Workspace\WeinCadSW\WeinCadSW\WeinCadSW.csproj]
   at Mono.Cecil.DefaultAssemblyResolver.Resolve(AssemblyNameReference name) [C:\Users\egger\Workspace\WeinCadSW\WeinCadSW\WeinCadSW.csproj]
   at Mono.Cecil.MetadataResolver.Resolve(TypeReference type) [C:\Users\egger\Workspace\WeinCadSW\WeinCadSW\WeinCadSW.csproj]
   at Mono.Cecil.ModuleDefinition.Resolve(TypeReference type) [C:\Users\egger\Workspace\WeinCadSW\WeinCadSW\WeinCadSW.csproj]
   at Mono.Cecil.TypeReference.Resolve() [C:\Users\egger\Workspace\WeinCadSW\WeinCadSW\WeinCadSW.csproj]
   at Mono.Cecil.Mixin.CheckedResolve(TypeReference self) [C:\Users\egger\Workspace\WeinCadSW\WeinCadSW\WeinCadSW.csproj]
   at Mono.Cecil.MetadataBuilder.GetConstantType(TypeReference constant_type, Object constant) [C:\Users\egger\Workspace\WeinCadSW\WeinCadSW\WeinCadSW.csproj]
   at Mono.Cecil.MetadataBuilder.AddConstant(IConstantProvider owner, TypeReference type) [C:\Users\egger\Workspace\WeinCadSW\WeinCadSW\WeinCadSW.csproj]
   at Mono.Cecil.MetadataBuilder.AddParameter(UInt16 sequence, ParameterDefinition parameter, ParamTable table) [C:\Users\egger\Workspace\WeinCadSW\WeinCadSW\WeinCadSW.csproj]
   at Mono.Cecil.MetadataBuilder.AddParameters(MethodDefinition method) [C:\Users\egger\Workspace\WeinCadSW\WeinCadSW\WeinCadSW.csproj]
   at Mono.Cecil.MetadataBuilder.AddMethod(MethodDefinition method) [C:\Users\egger\Workspace\WeinCadSW\WeinCadSW\WeinCadSW.csproj]
   at Mono.Cecil.MetadataBuilder.AddMethods(TypeDefinition type) [C:\Users\egger\Workspace\WeinCadSW\WeinCadSW\WeinCadSW.csproj]
   at Mono.Cecil.MetadataBuilder.AddType(TypeDefinition type) [C:\Users\egger\Workspace\WeinCadSW\WeinCadSW\WeinCadSW.csproj]
   at Mono.Cecil.MetadataBuilder.AddTypeDefs() [C:\Users\egger\Workspace\WeinCadSW\WeinCadSW\WeinCadSW.csproj]
   at Mono.Cecil.MetadataBuilder.BuildTypes() [C:\Users\egger\Workspace\WeinCadSW\WeinCadSW\WeinCadSW.csproj]
   at Mono.Cecil.MetadataBuilder.BuildModule() [C:\Users\egger\Workspace\WeinCadSW\WeinCadSW\WeinCadSW.csproj]
   at Mono.Cecil.MetadataBuilder.BuildMetadata() [C:\Users\egger\Workspace\WeinCadSW\WeinCadSW\WeinCadSW.csproj]
   at Mono.Cecil.ModuleWriter.<>c.<BuildMetadata>b__1_0(MetadataBuilder builder, MetadataReader _) [C:\Users\egger\Workspace\WeinCadSW\WeinCadSW\WeinCadSW.csproj]
   at Mono.Cecil.ModuleDefinition.Read[TItem,TRet](TItem item, Func`3 read) [C:\Users\egger\Workspace\WeinCadSW\WeinCadSW\WeinCadSW.csproj]
   at Mono.Cecil.ModuleWriter.BuildMetadata(ModuleDefinition module, MetadataBuilder metadata) [C:\Users\egger\Workspace\WeinCadSW\WeinCadSW\WeinCadSW.csproj]
   at Mono.Cecil.ModuleWriter.WriteModuleTo(ModuleDefinition module, Disposable`1 stream, WriterParameters parameters) [C:\Users\egger\Workspace\WeinCadSW\WeinCadSW\WeinCadSW.csproj]
   at Mono.Cecil.ModuleDefinition.Write(String fileName, WriterParameters parameters) [C:\Users\egger\Workspace\WeinCadSW\WeinCadSW\WeinCadSW.csproj]
   at Mono.Cecil.AssemblyDefinition.Write(String fileName, WriterParameters parameters) [C:\Users\egger\Workspace\WeinCadSW\WeinCadSW\WeinCadSW.csproj]
   at StrongNamer.AddStrongName.ProcessAssembly(ITaskItem assemblyItem, StrongNameKeyPair key) [C:\Users\egger\Workspace\WeinCadSW\WeinCadSW\WeinCadSW.csproj]
   at StrongNamer.AddStrongName.Execute() [C:\Users\egger\Workspace\WeinCadSW\WeinCadSW\WeinCadSW.csproj]
   at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute() [C:\Users\egger\Workspace\WeinCadSW\WeinCadSW\WeinCadSW.csproj]
   at Microsoft.Build.BackEnd.TaskBuilder.<ExecuteInstantiatedTask>d__26.MoveNext() [C:\Users\egger\Workspace\WeinCadSW\WeinCadSW\WeinCadSW.csproj]

On line 2 it says that it tried to resolve SolidWorks.Interop.swconst which is an external reference that lives somewhere on the disk.