- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在执行以下操作:
我创建了一个默认的类文件项目
编辑了csproj文件以包括Pre和Post BuildEvents
取消注释默认注释掉的BeforeBuild和AfterBuild目标
在Visual Studio中,BeforeBuild和AfterBuild目标未称为form,而是从msbuild命令行调用的,为什么?
我宁愿使用msbuild目标,也不愿使用PostBuildEvent,如果它可以工作的话,似乎可以给我带来更多功能和灵活性。
干杯,
亚当
我缩短了输出中的某些路径,所以如果它们不一致,这就是为什么
ClassLibrary1.csproj更改
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<Target Name="BeforeBuild">
<Message Text="### BeforeBuild ###" />
</Target>
<Target Name="AfterBuild">
<Message Text="### AfterBuild ###" />
</Target>
<PropertyGroup>
<PreBuildEvent>echo PRE_BUILD</PreBuildEvent>
</PropertyGroup>
<PropertyGroup>
<PostBuildEvent>echo POST_BUILD</PostBuildEvent>
</PropertyGroup>
------ Rebuild All started: Project: ClassLibrary1, Configuration: Debug Any CPU ------
PRE_BUILD
ClassLibrary1 -> c:\ClassLibrary1\bin\Debug\ClassLibrary1.dll
POST_BUILD
========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========
#>msbuild ClassLibrary1.sln
Microsoft (R) Build Engine Version 4.0.30319.1
[Microsoft .NET Framework, Version 4.0.30319.239]
Copyright (C) Microsoft Corporation 2007. All rights reserved.
Build started 09/05/2012 13:27:42.
Project "c:.sln" on node 1 (default targets).
ValidateSolutionConfiguration:
Building solution configuration "Debug|Any CPU".
Project "c:.sln" (1) is building "c:\ClassLibrary1.csproj" (2) on node 1 (default targets).
BeforeBuild:
### BeforeBuild ###
PreBuildEvent:
echo PRE_BUILD
PRE_BUILD
GenerateTargetFrameworkMonikerAttribute:
Skipping target "GenerateTargetFrameworkMonikerAttribute" because all output files are up-to-date with respect to the input files.
CoreCompile:
Skipping target "CoreCompile" because all output files are up-to-date with respect to the input files.
CopyFilesToOutputDirectory:
ClassLibrary1 -> c:\bin\Debug\ClassLibrary1.dll
PostBuildEvent:
echo POST_BUILD
POST_BUILD
AfterBuild:
### AfterBuild ###
Done Building Project "c:\ClassLibrary1.csproj" (default targets).
Done Building Project "c:.sln" (default targets).
Build succeeded.
0 Warning(s)
0 Error(s)
Time Elapsed 00:00:00.18
最佳答案
您的构建事件正在触发,您只是在Visual Studio中看不到它们。
默认情况下,VS将msbuild的详细程度设置为minimal
。您可以通过将消息的重要性更改为high
来显示消息
<Target Name="BeforeBuild">
<Message Text="### BeforeBuild ###" Importance="high" />
</Target>
<Target Name="AfterBuild">
<Message Text="### AfterBuild ###" Importance="high" />
</Target>
关于visual-studio-2010 - Visual Studio中的BeforeBuild和AfterBuild Target无法触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10516336/
我的 .csproj 文件中有以下内容: 但是没有输出。我还将我的构建输出详细程度更改为正常,然后是详细(正如我在其他帖子中看到的那样)。 我可以从详细的输出中看到这一点: Target "
我似乎遇到了这样的情况:放入 BeforeBuild 目标中的代码未成功执行。 这是我所拥有的: 构建运行时,我在构建日志中看不到消息输出。我的格式设置有问题吗?还是它必须位于脚本中的特
我正在使用 MSBuild.Community.Tasks 来帮助完成两件事,即调整版本和压缩文件。我不喜欢这个,所以欢迎使用替代方法,只要它能产生我正在寻找的东西。目标是在构建之前增加构建号,然后在
我昨天问了关于让 AfterBuild 工作的问题,并且能够通过将它放在 Project 部分的最底部来让它工作:MSBuild AfterBuild Step 我在不同的项目中尝试过完全相同的事情。
我试图让一些预构建步骤在 Visual Studio 2012 中的 C++ 项目中工作,但它们没有被调用(虽然我很确定相同的技术在 Visual Studio 2010 中也可以使用)。命令行构建的
我正在定制 .csproj项目在主构建之前运行一些自定义任务。但是,我根本无法执行任务。 我取消了 的注释.csproj 中的元素文件并添加了一个简单的消息任务,但是当我构建时,消息没有出现在我的输
我正在尝试在 .csproj (vs2017) 中使用目标事件“BeforeBuild”,但它不起作用。有人会知道出了什么问题: Exe netcoreapp1.1
今天我遇到了一个类似的问题,它让我想起了这个线程。在 Visual Studio 中,如果我们打开 .csproj 文件,我们会看到它们告诉我们取消对 AfterBuild 和 BeforeBuild
我最近不得不从 PreBuildEvent in Visual Studio into the BeforeBuild target to make it work on AppHarbor 中移动一
我编写了一个 C# 预处理器,通过使用 BeforeBuild MSBuild 目标调用它,我将其合并到我的 .csproj 项目中。这工作正常,除非预处理器修改了项目中的一个或多个 C# 源文件(很
升级到 csproj 以使用 Visual Studio 2017 和 Microsoft.NET.Sdk 后,我的“BeforeBuild”和“AfterBuild”目标不再运行。我的文件看起来像这
我想创建一个 nuget 包,该包使用我创建的自定义 MSBuild 任务将 BeforeBuild 步骤添加到我的 csproj 中。理想情况下,我想要: 将新目标添加到 csproj 文件 (My
我是一名优秀的程序员,十分优秀!