我正在使用NuGet来引入YUICompressor.NET.MSBuild
,而YUICompressor.NET
又会EcmaScript.Net
和<UsingTask TaskName="CssCompressorTask" AssemblyFile="$(SolutionDir)\packages\YUICompressor.NET.MSBuild.2.3.0.0\lib\NET20\Yahoo.Yui.Compressor.Build.MsBuild.dll" />
。
它还添加了对我的Web项目中所有三个DLL的引用。 然后,我可以像这样添加UsingTask引用:
AfterBuild
然后使用该任务在/packages
目标
但是,我不想在我的web项目中引用这些DLL(因为它们实际上并不是我发布的内容的一部分)...但是当我删除引用时,CssCompressorTask再也找不到了其他的两个相关的DLL(它们位于Yahoo.Yui.Compressor.Build.MsBuild.dll
文件夹下的不同文件夹中 - 如果它们位于AssemblySearchPaths
旁边就可以正常工作了)
信不信由你,我花了好几个小时试图让依赖关系解决: 首先,我尝试修改{{1}}以包含所有其他/ packages子文件夹,如下所示:
https://github.com/BenPhegan/NuGetAutoTransitiveDependencies
这不起作用,所以我尝试创建一个内联汇编解析器,如下所示:
MSBuild UsingTask Resolve References
这也不起作用。目前,我认为我唯一的选择是将依赖的DLL与UsingTask dll一起使用,不管怎么样......但这感觉就像我的MSBuild foo让我失望:/
任何想法都非常感谢!感谢。
答案 0 :(得分:0)
我需要自定义任务才能使用JSON API(NewtonSoft)。在我运行gacutil /i [path to dll]
之前,MSBuild没有加载外部dll。
答案 1 :(得分:0)
好的,v2.4.0.0+现在包含了DLL