gpt4 book ai didi

.net - 将 .NET Standard 库打包为 Nuget 包并包含所有项目依赖项/引用

转载 作者:行者123 更新时间:2023-12-04 17:56:50 25 4
gpt4 key购买 nike

当我尝试使用在 VS 2017 中创建 Nuget 包的内置功能(对于 .NET Standard 类库)时,它不包含任何依赖项(项目引用),它只包含当前项目的 DLL。 .

这是我的项目文件:

<Project Sdk="Microsoft.NET.Sdk">
.
.
<PropertyGroup>
<TargetFrameworks>netstandard1.6;net47</TargetFrameworks>
<PreserveCompilationContext>true</PreserveCompilationContext>
<PackageRequireLicenseAcceptance>False</PackageRequireLicenseAcceptance>
<GeneratePackageOnBuild>True</GeneratePackageOnBuild>
<IncludeBuildOutput>True</IncludeBuildOutput>
<IncludeContentInPack>True</IncludeContentInPack>
<DevelopmentDependency>False</DevelopmentDependency>
</PropertyGroup>
.
.
</Project>

我尝试了不同的值:DevelopmentDependency、IncludeContentInPack、IncludeBuildOutput,结果是一样的。

我也尝试过 VS 2017 预览版。

最佳答案

When I try to use the built-in feature of creating Nuget packages in VS 2017 (for a .NET Standard class library), it doesn't include any dependencies...



我知道你想直接打包 nuget 包,包括 Visual Studio 2017 引用的项目。但是我发现VS 2017在VS 2017打包包时将项目引用作为依赖项,我还没有找到直接通过VS打包包含引用项目作为DLL文件的值。

作为一种解决方法,您可以使用 nuget 和 .nuspec 文件来包含引用的项目,下面是我的 .nuspec 文件:

<?xml version="1.0"?>
<package >
<metadata>
<id>MyTestNuGetPackage</id>
<version>1.0.0</version>
<authors>Test</authors>
<owners>Test</owners>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>Package description</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="bin\Debug\netstandard1.6\MyTestNuGetPackage.dll" target="lib\netstandard1.6" />
<file src="bin\Debug\netstandard1.6\ReferencedProject.dll" target="lib\netstandard1.6" />
<file src="bin\Debug\net47\MyTestNuGetPackage.dll" target="lib\net47" />
<file src="bin\Debug\net47\ReferencedProject.dll" target="lib\net47" />
</files>
</package>

然后使用命令: nuget pack .nuspec创建 nuget 包。

enter image description here

详细信息可以引用 Create .NET standard packages.

关于.net - 将 .NET Standard 库打包为 Nuget 包并包含所有项目依赖项/引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45676872/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com