Comments (7)
You can try providing ILRepack.targets similar to the following one in your projects folder.
<!-- ILRepack -->
<?xml version="1.0" encoding="utf-8" ?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Target Name="ILRepacker" AfterTargets="Build" Condition="'$(Configuration)' == 'Release'">
<ItemGroup>
<InputAssemblies Include="$(OutputPath)\ExampleAssemblyToMerge1.dll" />
<InputAssemblies Include="$(OutputPath)\ExampleAssemblyToMerge2.dll" />
<InputAssemblies Include="$(OutputPath)\ExampleAssemblyToMerge3.dll" />
</ItemGroup>
<ILRepack
Parallel="true"
Internalize="true"
InputAssemblies="@(InputAssemblies)"
TargetKind="Dll"
OutputFile="$(OutputPath)\$(AssemblyName).dll"
AllowedDuplicateNamespaces="System.Collections.Generic.*"
/>
</Target>
</Project>
<!-- /ILRepack -->
from ilrepack.lib.msbuild.task.
Thank you for your answer.
Does that mean I have to specify every assembly to include?
I was hoping for an option similar to /allowDup in "ILMerge"
from ilrepack.lib.msbuild.task.
Yes, You have to provide targets file to use AllowedDuplicateNamespaces option which should work similarly to /allowDup. You can use something like the following if you don't want to write every dll into the targets file.
<!-- ILRepack -->
<?xml version="1.0" encoding="utf-8" ?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Target Name="ILRepacker" AfterTargets="Build" Condition="'$(Configuration)' == 'Release'">
<ItemGroup>
<InputAssemblies Include="$(OutputPath)$(TargetName)$(TargetExt)"/>
<InputAssemblies Include="$(OutputPath)*.dll" Exclude="$(OutputPath)$(TargetName)$(TargetExt)"/>
</ItemGroup>
<ILRepack
Parallel="true"
DebugInfo="true"
AllowDuplicateResources="false"
InputAssemblies="@(InputAssemblies)"
TargetKind="SameAsPrimaryAssembly"
AllowedDuplicateNamespaces="System.Collections.Generic.*"
OutputFile="$(OutputPath)$(TargetName)$(TargetExt)"
/>
</Target>
</Project>
<!-- /ILRepack -->
from ilrepack.lib.msbuild.task.
Thanks again. That looks good. I will try this.
from ilrepack.lib.msbuild.task.
My build fails without any Error Message in the output.
How can I find out what's wrong with my targets file?
from ilrepack.lib.msbuild.task.
Try providing a LogFile option. It should show up in the log.
from ilrepack.lib.msbuild.task.
Or you can use MSBuild Log Viewer.
from ilrepack.lib.msbuild.task.
Related Issues (20)
- Release configuration merges more assemblies when needed HOT 19
- ILRepack.Lib.MSBuild.Task does not work on Linux HOT 3
- Internalize doesn't work for TaskEx HOT 1
- ILRepack is not working for desktop framework HOT 1
- Could you please provide a new release? HOT 1
- CleanReferenceCopyLocalPaths Not Happening v2.0.18.1 HOT 9
- Release configuration merge gives error failed to resolve assembly HOT 11
- did ILRepack surport vs2019 + .net framework 4.7.2? HOT 6
- dotnet build not working HOT 5
- PrimaryAssemblyFile only added on Release Builds
- Failed to resolve assembly Newtonsoft.Json, Version=13.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' HOT 3
- Where do we put the reference to the key HOT 4
- Build task isn't re-signing/strong-naming my assembly HOT 2
- InvalidCastException when trying to merge Oracle.ManagedDataAccess.dll HOT 1
- Support regex in InternalizeExclude HOT 1
- Force exclude a library reference from being merged in HOT 2
- Internalize not working with 2.0.22 HOT 13
- Nuget API key in appveyor.yml file? HOT 1
- Should the NuGet package be marked as a development dependency? HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ilrepack.lib.msbuild.task.