有没有办法禁用Fody Costura?我需要执行一些故障排除,我想知道Fody Costura不是问题的一部分。我宁愿禁用它而不是删除nuget,这将是一个解决方案。
从Fody配置中删除<Costura/>
会出现以下错误,因为我不使用任何其他编织者:
Fody: No configured weavers. It is possible you have not installed a weaver or have installed a fody weaver nuget into a project type that does not support install.ps1. You may need to add that weaver to FodyWeavers.xml manually. eg. <Weavers><WeaverName/></Weavers>. see https://github.com/Fody/Fody/wiki/SampleUsage
答案 0 :(得分:4)
AFAIK,无法关闭Costura,但您可以手动排除所有参考:
<Costura>
<ExcludeAssemblies>
Foo
Bar
</ExcludeAssemblies>
</Costura>
请注意,它不包含.dll
/ .exe
扩展名(Foo
而不是Foo.dll
)
另外,如果要嵌入本机/非托管dll,请确保将这些库的Build Action切换为None
答案 1 :(得分:2)
是的,您可以评论或删除<Costura />
FodyWeavers.xml
行
答案 2 :(得分:2)
打开.csproj文件,搜索“fody”,然后删除包含它的所有标签。比如
<Error Condition="!Exists('..\packages\Fody.1.29.4\build\dotnet\Fody.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Fody.1.29.4\build\dotnet\Fody.targets'))" />
</Target>
<Import Project="..\packages\Fody.1.29.4\build\dotnet\Fody.targets" Condition="Exists('..\packages\Fody.1.29.4\build\dotnet\Fody.targets')" />
这些是在此标记之后
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
答案 3 :(得分:1)
https://github.com/Fody/Costura/issues/143#issuecomment-378612705
<DisableFody Condition="'$(Configuration)' == 'Debug'">true</DisableFody>
答案 4 :(得分:1)
我知道这是一个较旧的线程,但我发现在 FodyWeavers.xml 中包含一个空的 IncludeAssemlies 部分也取得了成功。 Costura 然后不包含任何内容。
<IncludeAssemblies>
</IncludeAssemblies>