【问题标题】:Can we build a website using MSBuild我们可以使用 MSBuild 建立网站吗
【发布时间】:2010-10-22 22:41:29
【问题描述】:

我对持续集成非常陌生。谁能告诉我我们是否可以使用 MSbuild 建立一个网站?

【问题讨论】:

    标签: asp.net msbuild continuous-integration cruisecontrol.net


    【解决方案1】:

    您可以使用 AspNetCompiler MSBuild 任务构建网站项目。

    http://msdn.microsoft.com/en-us/library/ms164291.aspx

    您的 MSBuild 文件可能如下所示:

    <Project
            xmlns = "http://schemas.microsoft.com/developer/msbuild/2003"
            DefaultTargets = "PrecompileWeb">
            <Target Name = "PrecompileWeb">
                    <AspNetCompiler
                            VirtualPath = "DeployTemp" 
                            PhysicalPath = "C:\ccnet\myProject\WebSite"
                            TargetPath = "C:\ccnet\myProject\PreCompiled"
                            Force = "true"
                            Debug = "true"
                            Updateable = "true"/>
            </Target>
    </Project>
    

    然后在您的 ccnet.config 中,您将在项目的任务块中添加类似以下内容:

    <msbuild>
        <executable>C:\WINDOWS\Microsoft.NET\Framework\v3.5\MSBuild.exe</executable>
            <workingDirectory>C:\ccnet\myProject\</workingDirectory>
            <projectFile>C:\ccnet\myProject\myproject.msbuild</projectFile>
            <logger>C:\Program Files\CruiseControl.NET\server\ThoughtWorks.CruiseControl.MsBuild.dll</logger>
    </msbuild>
    

    【讨论】:

    • 这很好用。我将它与在 IIS 中设置 Web 应用程序以自动部署的几个任务相结合。
    • 对于现代的静态内容网站项目,您还会推荐这种方法吗?
    【解决方案2】:

    如果您有网站的 SLN 文件,则可以使用以下命令:

    msbuild YourSolutionFile.sln

    【讨论】:

    • 或者,您可以导航到 .sln 文件所在的目录并键入“msbuild”(假设 msbuild 在当前路径中)。
    【解决方案3】:

    是的,你可以——即使是“网站”。

    您需要做的是添加“Web 部署项目”并对其进行设置,以便它从网站上抓取所有文件,编译它们,然后使用 WiX 之类的工具,您可以为文件创建安装程序能够轻松地将您的网站及其所需的所有文件部署到客户的计算机上。

    马克

    【讨论】:

    【解决方案4】:

    很遗憾,如果您选择了“网站”作为项目类型,您就不能这样做。但是,如果您选择“Web 应用程序”项目类型,您可以使用 MSBUILD 来构建它。创建“Web 应用程序”项目后,您可以右键单击它并选择“添加 Web 部署项目”,这会将 wdproj 文件添加到您的解决方案中,您可以在其中自定义设置。

    您可以将此 wdproj 文件提供给项目的 ccnet 配置文件,该项目可以按照配置的时间表运行此文件。一旦我在办公室,我可能会在明天之前为您提供在 cc.net 配置文件中配置所需的适当节点

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-14
      • 1970-01-01
      • 2022-12-07
      相关资源
      最近更新 更多