Project SDK(.Net标准):创建包含msbuild目标的nuget包的正式方法

Project SDK(.Net标准):创建包含msbuild目标的nuget包的正式方法,sdk,package,nuget,project,target,Sdk,Package,Nuget,Project,Target,Visual Studio 2019,.Net标准2.0 如何为使用项目包含自定义msbuild目标文件? 官方支持的做法是什么 我已经试过了: 根据()修改csproj文件 正在尝试根据()指定nuspec文件 Nuspec: 测试NuGetContent 1.0.10 废话 我 我 http://LICENSE_URL_HERE_OR_DELETE_THIS_LINE http://PROJECT_URL_HERE_OR_DELETE_THIS_LINE http://ICON_URL

Visual Studio 2019,.Net标准2.0

如何为使用项目包含自定义msbuild目标文件? 官方支持的做法是什么

我已经试过了:

  • 根据()修改csproj文件
  • 正在尝试根据()指定nuspec文件
Nuspec:


测试NuGetContent
1.0.10
废话
我
我
http://LICENSE_URL_HERE_OR_DELETE_THIS_LINE
http://PROJECT_URL_HERE_OR_DELETE_THIS_LINE
http://ICON_URL_HERE_OR_DELETE_THIS_LINE
假的
废话
此版本包中所做更改的摘要。
版权2019
Tag1 Tag2

netstandard2.0
真的
TestingNugetContent.nuspec
$(MSBuildProjectDirectory)/bin/$(配置)/发布/
$(IntermediatePackDir)$(TargetFramework)/
publishDir=$([MSBuild]::NormalizeDirectory($(mediatePackDir)))
1.0.10
检查消费者的.csproj.nuget.g.targets文件根据文档安装nuget软件包后,此自定义目标的导入项目标记丢失。您的
nuspec
列为
TestingNugetContent
,因此文件必须是
TestingNugetContent.props
TestingNugetContent.targets
。它们应该直接放在包中的
build/
文件夹中,或者放在
build/
文件夹中(我更喜欢更明确一些,所以我建议您使用
netstandard2.0
TFM)。现在,您的csproj似乎指定了一个
build\netstandard2.0\TestingNugetContent.targets
,它看起来是正确的,因此我只能猜测它没有打包到正确的位置

我目前没有时间展示如何打包的示例,但是您可以使用检查
nupkg
的内容,或者只是将其作为zip文件打开,查看“错误”,然后调整项目并重试

仅供参考,您根本不需要使用nuspec,可以使用指定MSBuild项的打包位置。我不清楚你的
PublishAll
目标是什么。如果您将其作为尝试包含目标文件的一部分添加,则可以将其删除