2009-08-04 172 views

回答

0

我已经在更大的CI方案中使用了MSBuild。我使用Hudson来触发构建作业,我们使用MSBuild构建程序集,但不进行部署。对于部署,我使用BeyondCompare将文件“同步”到IIS站点文件夹。

5

我直接使用msbuild,跳过nAnt。您可以使用构建文件作为属性调用它,并从命令行指定目标。下面是一个示例soultion.build文件:

<?xml version="1.0" encoding="utf-8"?> 
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 
    <!-- Import the MSBuild Tasks --> 
    <Import Project="$(MSBuildExtensionsPath)\MSBuildCommunityTasks\MSBuild.Community.Tasks.Targets" /> 
    <PropertyGroup> 
    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> 
    <ClassLibraryOutputDirectory>bin$(Configuration)</ClassLibraryOutputDirectory> 
    <ProjectDir>.\</ProjectDir > 
    <ProjectTestDir>DALTests\</ProjectTestDir > 
    <ProjectFile>$(ProjectDir)SSN.sln</ProjectFile > 
    <TestProjectFile>$(ProjectTestDir)DALTests.csproj</TestProjectFile > 
    </PropertyGroup> 

    <!-- Build projects by calling the Project files generated by VS --> 
    <Target Name="Build"> 
    <MSBuild Projects="$(ProjectFile)" /> 
    <MSBuild Projects="$(TestProjectFile)" /> 
    </Target> 

    <!-- Run Unit tests --> 
    <Target Name="Test" DependsOnTargets="Build"> 
    <CreateItem Include="DALTests\Bin\Debug\DALTests.exe"> 
     <Output TaskParameter="Include" ItemName="DALTests" /> 
    </CreateItem> 
    <NUnit Assemblies="@(DALTests)" ToolPath="D:\Program Files\NUnit 2.4.5\bin" ContinueOnError="false" OutputXmlFile="SoultionTestResults.xml" /> 
    </Target> 
</Project> 

我把这个批处理文件是这样的: (在同一目录作为soultion.build)

C:\WINDOWS\Microsoft.NET\Framework\v3.5\MSBuild.exe Soultion.Build /Target:Build 

您需要的MSBuild社区任务DLL,只是谷歌它。

+0

将在什么地方的MSBuild社区任务的DLL去?我是否从我的asp.net mvc应用程序引用? – Haroon 2011-07-18 10:32:34

+4

对不起......你如何使用这个为asp.net mvc应用程序? – Haroon 2011-07-18 10:47:37

相关问题