SmartAssembly build failed. Type initializer threw exception

.NET obfuscator and automated error reporting

Moderators: Luke Jefferson, melvyn.harbour, dom.smith

SmartAssembly build failed. Type initializer threw exception

Postby KirillSk » Mon Oct 08, 2012 7:41 am

Hi, I am using SmartAssembly 6.1 in my build tasks.
Here is fragment of my .csproj file.
Code: Select all
<UsingTask TaskName="SmartAssembly.MSBuild.Tasks.Build" AssemblyName="SmartAssembly.MSBuild.Tasks, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7f465a1c156d4d57" />
  <Target Name="BeforeBuild">
    <CreateItem Include="$(ProjectDir)\\**\\*.*.resx">
      <Output TaskParameter="Include" ItemName="EmbeddedResource" />
    </CreateItem>
  </Target>
  <Target Name="AfterBuild" Condition=" '$(Configuration)' == 'Release' AND '$(Obfuscate)' == 'Yes' ">
    <SmartAssembly.MSBuild.Tasks.Build ProjectFile="CoreDomain.saproj" MarkAsReleased="True" />
  </Target>

I get following error when start building:
SmartAssembly build failed: The type initializer for 'SmartAssembly.ConsoleApp' threw an exception.
At the same time if I launch SmartAssembly application, create new project and build it, build succeeds. What could be wrong?
KirillSk
 
Posts: 2
Joined: Mon Oct 08, 2012 7:23 am

Postby Brian Donahue » Tue Oct 09, 2012 9:25 am

There is not enough information in the error message to say what the problem is, but off the top of me head I would say it was something to do with Log4Net. Because SA has to share its' process space with other add-ins, I've found some of them using different versions of the third-party log4net dll, and if an incompatible version gets loaded, it will cause a problem in the Visual Studio build.

The only way I've found around that is to not use the MSBUILD task DLL and change the post-build action to an EXEC task instead.
Brian Donahue
 
Posts: 6670
Joined: Mon Aug 23, 2004 10:48 am

Re:

Postby KirillSk » Tue Oct 09, 2012 11:05 am

Brian Donahue wrote:There is not enough information in the error message to say what the problem is, but off the top of me head I would say it was something to do with Log4Net. Because SA has to share its' process space with other add-ins, I've found some of them using different versions of the third-party log4net dll, and if an incompatible version gets loaded, it will cause a problem in the Visual Studio build.

The only way I've found around that is to not use the MSBUILD task DLL and change the post-build action to an EXEC task instead.

That works perfectly, thank you!
KirillSk
 
Posts: 2
Joined: Mon Oct 08, 2012 7:23 am


Return to SmartAssembly 6

Who is online

Users browsing this forum: No registered users and 0 guests