2011-04-01 35 views
0

我有一个构建脚本,它可以将5个项目合并到一个DLL中。其中一个项目有一个引用System.Web.Mvc DLL,它驻留在我的Dependencies文件夹中。我将这个文件从ASP.NET MVC3文件夹复制到我的项目文件夹中。ilmerge System.Web.Mvc问题

这是运行ILMerge后的错误。

Merging Primary Assembly 
An exception occurred during merging: 
Unresolved assembly reference not allowed: System.Web.Mvc. 
    at System.Compiler.Ir2md.GetAssemblyRefIndex(AssemblyNode assembly) 
    at System.Compiler.Ir2md.GetTypeRefIndex(TypeNode type) 
    at System.Compiler.Ir2md.WriteTypeDefOrRefEncoded(BinaryWriter target, TypeNode type) 
    at System.Compiler.Ir2md.WriteTypeSignature(BinaryWriter target, TypeNode type, Boolean instantiateGenericTypes) 
    at System.Compiler.Ir2md.WriteTypeSignature(BinaryWriter target, TypeNode type, Boolean instantiateGenericTypes) 
    at System.Compiler.Ir2md.GetBlobIndex(TypeNode type) 
    at System.Compiler.Ir2md.GetTypeSpecIndex(TypeNode type) 
    at System.Compiler.Ir2md.VisitReferencedType(TypeNode type) 
    at System.Compiler.Ir2md.VisitMethod(Method method) 
    at System.Compiler.Ir2md.VisitClass(Class Class) 
    at System.Compiler.Ir2md.VisitModule(Module module) 
    at System.Compiler.Ir2md.SetupMetadataWriter(String debugSymbolsLocation) 
    at System.Compiler.Ir2md.WritePE(Module module, String debugSymbolsLocation, BinaryWriter writer) 
    at System.Compiler.Writer.WritePE(String location, Boolean writeDebugSymbols, Module module, Boolean delaySign, String keyFileName, String keyName) 
    at System.Compiler.Writer.WritePE(CompilerParameters compilerParameters, Module module) 
    at ILMerging.ILMerge.Merge() 
    at ILMerging.ILMerge.Main(String[] args) 
Rereferencing Merged Assembly 

任何想法,为什么我得到这个?

+1

没关系!我需要将CopyLocal设置为True ... – 2011-04-01 19:58:17

回答

1

或者你可以使用ILMarge/lib目录选项在你的脚本,如:

ILMerge.exe /lib:C:\Windows\Microsoft.NET\Framework64\v4.0.30319 /lib目录下:“C :\ Program Files(x86)\ Microsoft ASP.NET \ ASP.NET MVC 3 \ Assemblies“