[英]How to inject a custom dependency in an MSBuild NuGet pack generated .nuspec
[英]How to remove the dependencies section from nuspec file in the generated nuget package using msbuild 15
我使用msbuild v15.8.168.64424(vs 2017.8)命令行為控制台應用程序構建nuget軟件包。 我使用ILMerge合並所有依賴項,因此我只得到一個沒有依賴項的exe文件。
運行命令時
msbuild project1.csproj /t:build /p:configuration=release /p:IsTool=true
我得到了nuget包,但是在檢查它時,我發現了dependencies section
。
<dependencies>
<group targetFramework=".NETFramework4.5">
<dependency id="lib1" version="1.3.0" exclude="Build,Analyzers" />
<dependency id="lib2" version="2.3.0" exclude="Build,Analyzers" />
</group>
</dependencies>
我希望`dependencies'部分為空(因為我合並了所有依賴項)。
我可以使用nuspec文件來生成無依賴項部分的程序包,但是缺點是手動傳遞了csproj中包含的所有元數據。 我沒有在包目標輸入中找到依賴項的屬性
問題:
如何從生成的nuget包中包含的nuspec文件中刪除依賴項部分?
您可以在csproj文件中的程序包或項目引用( <PackageReference>
/ <ProjectReference>
)上設置元數據PrivateAssets="All"
,以將它們排除為NuGet依賴項。
請注意,此更改需要還原,因此請在兩者之間執行NuGet還原或將-restore
添加到MSBuild調用中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.