c# - .NET MSBuild Targets AfterTargets=使用 dotnet build 打包
问题描述
更新:
似乎添加dotnet build -v d
又名将详细程度设置为详细信息(显然)揭示了有关此过程的更多细节
原来的:
参考: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
s 似乎没有被执行
2)AssemblyVersion
似乎没有得到应用
dotnet pack
或者nuget pack
似乎没有什么不同
解决方案
在这种情况下更好地使用 Importance="High":
<Message Importance="High" Text="your Message"/>
推荐阅读
- python - 二维系统的欧拉方法
- windows - 与光标位置相关的奇怪的 Delphi IDE 行为
- node.js - 如何使用 angular 11 在 ionic.io 上创建全局组件?
- python - conda install package 命令不能每次都执行
- visual-studio-code - 更改语法突出显示提供程序
- python - 数据显示为带有 pandas.read_excel 的标题
- ios - 进入后台时如何隐藏游戏状态
- python - 如何从 python 终端获取 output_url 并存储它
- python - 尝试使用 python 上传 Facebook 离线事件
- c++ - 如何在 QGraphicsView 中禁用滚动?