我有一个视觉工作室MVC项目,我使用NPM和Bower。我通过预构建命令行将我的NPM和Bower包恢复为构建过程的一部分,因此使用该项目的人不需要知道npm install等。
不幸的是,无论出于何种原因,在包恢复完成之前,输出都不会呈现到输出窗口。在第一次构建项目时,这可能需要很长时间,我不想让我的用户挂起,等待视觉工作室做出响应。
有没有办法可以设置我的预构建命令行提示符,以便在运行时将写入输出,而不是运行后
>csproj调用运行命令
<PropertyGroup>
<PreBuildEvent>
cd "$(ProjectDir)"
echo "generating output for the output window prior to running the long running process"
dir
echo "now running long running task"
call pre-build.bat $(ConfigurationName)
</PreBuildEvent>
</PropertyGroup>
正如你所看到的,我有一些调试输出,有几个调用“echo”和一个dir调用。我希望在长时间运行的任务之前看到这些命令输出到输出窗口,但这不会发生。相反,我只看到以下输出,直到包恢复运行之后
1>------ Build started: Project: MyProject, Configuration: Debug Any CPU ------
因为我没有看到echo和dir的输出,我认为有不同的方式来运行这个任务,或者VS / MsBuild只是不支持显示我想要的输出,直到任务运行。有没有人知道如何设置它来将输出写为任务运行?
答案 0 :(得分:0)
使用Target&amp;消息元素:
<Target Name="UserMessage" BeforeTargets="Build">
<Message Text="Your message here" />
</Target>