繁体   English   中英

.NET MSBuild 目标 AfterTargets=Pack using dotnet build

[英].NET MSBuild Targets AfterTargets=Pack using dotnet build

更新:

似乎添加dotnet build -vd aka 将详细程度设置为详细揭示了有关此过程的更多详细信息(显然)

原来的:

参考: https : //docs.microsoft.com/en-us/nuget/reference/msbuild-targets

我正在使用dotnet build ,我的 csproj 看起来像:

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFramework>netstandard2.0</TargetFramework>
    <GeneratePackageOnBuild>true</GeneratePackageOnBuild>
    <PackageOutputPath>..\packages\</PackageOutputPath>
    <AssemblyVersion>0.1.0</AssemblyVersion>    
  </PropertyGroup>

  <Target Name="CopyPackage" AfterTargets="Pack">
      <Copy
        SourceFiles="$(OutputPath)..\$(PackageId).$(PackageVersion).nupkg"
        DestinationFolder="%USERPROFILE%\.nuget\packages"
      />
  </Target>
  <Target Name="AfterPackMessage" AfterTargets="Pack">
    <Message Text="Copied $(OutputPath)..\$(PackageId).$(PackageVersion).nupkg TO %USERPROFILE%\.nuget\packages" />  
  </Target>
</Project>

我只看到这个输出

C:\code\MySolution.net\MyProject.Core (feature-mediator-http)
λ dotnet build
Microsoft (R) Build Engine version 15.8.169+g1ccb72aefa for .NET Core
Copyright (C) Microsoft Corporation. All rights reserved.

  Restore completed in 70.34 ms for C:\code\MySolution.net\MyProject.Core\MyProject.Core.csproj.
  MyProject.Core -> C:\code\MySolution.net\MyProject.Core\bin\Debug\netstandard2.0\MyProject.Core.dll
  Successfully created package 'C:\code\MySolution.net\packages\MyProject.Core.1.0.0.nupkg'.

Build succeeded.
    0 Warning(s)
    0 Error(s)

Time Elapsed 00:00:03.68

这里有两个问题:

1)那些Target似乎没有被执行

2) AssemblyVersion似乎没有得到应用

dotnet packnuget pack似乎没有什么区别

在这种情况下最好使用 Importance="High":

<Message Importance="High" Text="your Message"/>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM