我想创建一个 NuGet 包,将多个 .dll 文件作为引用添加到我的项目中。
我有一个包含 10 个 .dll 文件的文件夹。
当我通过 NuGet 安装这个包时,我希望这些文件被添加到项目的引用中。
我想创建一个 NuGet 包,将多个 .dll 文件作为引用添加到我的项目中。
我有一个包含 10 个 .dll 文件的文件夹。
当我通过 NuGet 安装这个包时,我希望这些文件被添加到项目的引用中。
我想创建一个NuGet包,将多个.dll添加为我的项目的引用。
我将给出两种实现���法:
第一种方法,使用 NuGet Package Explorer:
第二种方法,就像Lex Li所提到的那样,我们可以使用.nuspec打包程序集:
nuget spec "PathOfProject\TestDemo.csproj"
TestDemo.csproj.nuspec
文件并对其进行修改,并将程序集添加为文件;以下是我的.nuspec文件:<?xml version="1.0"?>
<package>
<metadata>
<id>TestDemo</id>
<version>1.0.0</version>
<authors>Tester</authors>
<owners>Tester</owners>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>TestDemo</description>
<releaseNotes>Summary of changes made in this release of the package.</releaseNotes>
<copyright>Copyright 2017</copyright>
<tags>Tag1 Tag2</tags>
</metadata>
<files>
<file src="MultipleDll\*.*" target="lib\net461" />
</files>
</package>
使用 pack 命令:nuget pack TestDemo.csproj.nuspec
用 NuGet 包浏览器打开 TestDemo 包。
我认为创建NuGet包最好的方法是使用nuget.exe
。
nuget.exe
(https://www.nuget.org/downloads)在命令提示符中,输入
nuget spec
现在你将拥有一个.nuspec
文件。在编辑器中打开它并添加Id、作者等信息。
最重要的部分是在封闭的元数据标签后面的files
标签。
你可以像这样在此定义所有dll:
<files>
<file src="bin\Release\YourDll.dll" target="lib"></file>
</files>
最后,您可以使用以下命令创建.nupkg
文件:nuget pack 'Your_nuspec_file_name'
这个关于如何创建Nuget包的视频有一个非常有用且清晰的教程。
如果你想通过 Visual Studio 或 dotnet 完成,那么你可以编辑 csproj 文件并添加一个 ItemGroup 来包含以下的 dlls: 这将使其它的 dlls 和当前项目的 dll 一起打包在 Nuget 包中。
<ItemGroup>
<Content Include="<path to other dll>">
<Pack>true</Pack>
<PackagePath>lib\$(TargetFramework)</PackagePath>
</Content>
</ItemGroup>