我正在尝试创建一个msbuild脚本,该脚本将编译并将测试应用程序放入桌面上的文件夹中。我不希望这个应用程序发布到IIS。我跟着几个blgos看了看hashimi的书,但我还是想不通。下面是我的脚本。非常感谢你!
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Target Name="Clean">
<ItemGroup>
<BinFiles Include="bin\*.*" />
</ItemGroup>
<Delete Files="@(BinFiles)" />
</Target>
<Target Name="Compile" DependsOnTargets="Clean">
<MSBuild Projects="test.vbproj"/>
</Target>
<Target Name="Publish" DependsOnTargets="Compile">
<RemoveDir Directories="$(OutputFolder)"
ContinueOnError="true"/>
<MSBuild Projects="test.vbproj"
targets="ResolveReferences;_CopyWebApplication"
Properties="WebProjectOutputdir=$(OutputFolder; OutDir=$WebProjectOutputDir)\"/>
</Target>
</Target>
</Project>
答案 0 :(得分:0)
您的脚本有点尴尬(您重新定义了干净的目标以执行与基本清理目标相同的操作)。
我很确定您的问题来自CopyWebApplication,它根据项目文件中设置的属性执行大量操作并通过命令行传递。
您可以尝试以下脚本:
<Project DefaultTargets="Compile" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Target Name="Compile">
<MSBuild
Projects="test.vbproj"
Targets="Clean;Build"
Properties="OutputPath=C:\tmp"/>
</Target>
</Project>
如果您的测试项目是一个网站,那么构建目标应该在OutputPath / OutDir属性中指定的文件夹上创建它