完整的 .Net 框架是否支持 msbuild /t:Pack?

GGi*_*ard 4 msbuild nuget visual-studio-2017

根据文档https://docs.microsoft.com/en-us/nuget/schema/msbuild-targets,看起来 msbuild 现在支持 NuGet 的 2 个特定目标:PackRestore. 我已经能够Restore正常使用,但不能Pack

错误 MSB4057:项目中不存在目标“Pack”。

它支持传统的 .Net 项目还是仅支持 .Net Core?
我一直找不到任何文件清楚地说明它。

关于所需的依赖项,我正在使用

PM> nuget help
NuGet Version: 4.1.0.2450
usage: NuGet <command> [args] [options] 
Type 'NuGet help <command>' for help on a specific command.
Run Code Online (Sandbox Code Playgroud)

C:\Git>msbuild /version
Microsoft (R) Build Engine version 15.1.1012.6693
Copyright (C) Microsoft Corporation. All rights reserved.

15.1.1012.6693
Run Code Online (Sandbox Code Playgroud)

Microsoft Visual Studio Professional 2017 
Version 15.2 (26430.12) Release
VisualStudio.15.Release/15.2.0+26430.12
Microsoft .NET Framework
Version 4.6.01586
Run Code Online (Sandbox Code Playgroud)

Mar*_*ich 5

“基于 SDK”的项目支持开箱即用。若您使用此“”新型的csproj“” .NET框架库中没有VS项目模板,但你可以创建一个.NET标准库项目和手动更改TargetFramework的文件的csproj财产netstandard1.6net461。请注意,用于这些类型项目的项目系统尚不支持经典 .net 项目中的许多可用功能(例如 WinForms、Xaml、edmx 的设计器)。

生成的项目文件如下所示:

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <TargetFramework>net461</TargetFramework>
  </PropertyGroup>
</Project>
Run Code Online (Sandbox Code Playgroud)

  • 所以这里的重点是切换到新的csproj格式?因此,在 VS 支持 **AS DEFAULT** 之前,没有必要通过破解它来切换,对吗? (2认同)