我有一个正在学习的简单 MSBuild 文件。
这里是:
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Clean" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<ProjectGuid>{D5A16164-962E-4A6D-9382-240F31AB6C50}</ProjectGuid>
</PropertyGroup>
<Target Name="Clean">
<ItemGroup>
<BinFiles Include="bin\*.*" />
<fff Include="f\*.*" />
</ItemGroup>
<Delete Files="@(BinFiles)" />
<Delete Files="@(fff)" />
</Target>
</Project>
现在我想将它包含在 Visual Studio 解决方案中,并能够从 Visual Studio 2012 运行“干净”目标。我尝试将其命名testproject.msbuildproj
为互联网似乎建议“有效”,但它不起作用。当我运行 clean 命令时,我只是得到“意外错误”。
如果我将项目重命名为testproject.csproj
,它会做一些不直观的事情,比如创建编译目录,但它确实会正确运行我的 clean 命令。但是,这是不可取的,因为它会创建obj
和bin/x86/debug
键入目录。它在 Visual Studio 中看起来也很愚蠢,因为它仍然提供了“引用”下拉菜单。
如何在没有随机错误或错误假设的情况下仅使用 Visual Studio 中的普通 MSBuild 项目?
注意我只是在 Visual Studio 中遇到了这个问题。从命令行使用 msbuild 它可以完美运行