2017-05-05 70 views
1

我想爲舊的項目設置Continuations Integration爲網站發佈文物轉到預編譯的網頁

該項目仍然使用網站而不是Web應用程序。在Visual studio我創建了發佈配置文件。我只是希望它將它發佈到解決方案中的本地文件夾中。

當我從Visual studio內發佈,但只要我跑MSbuild命令,然後它會創建一個PrecompiledWeb文件夾,並把代碼中有它的偉大工程。

,這導致我的構建神器,只要我嘗試失敗,並設置我的CI

這是我發佈的個人資料設置

<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 
    <PropertyGroup> 
    <WebPublishMethod>FileSystem</WebPublishMethod> 
    <LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration> 
    <LastUsedPlatform>Any CPU</LastUsedPlatform> 
    <SiteUrlToLaunchAfterPublish /> 
    <LaunchSiteAfterPublish>True</LaunchSiteAfterPublish> 
    <ExcludeApp_Data>False</ExcludeApp_Data> 
    <publishUrl>.\Publish</publishUrl> 
    <DeleteExistingFiles>True</DeleteExistingFiles> 
    <PrecompileBeforePublish>False</PrecompileBeforePublish> 
    </PropertyGroup> 
</Project> 

我甚至試圖設置PrecompileBeforePublish到假。但是這也沒有奏效。

MSBuild命令

c:\development\projectname>msbuild project.sln /p:deployOnBuild=true /p:publishProfile=projectFileSystem 
+0

什麼是您正在使用的Visual Studio的版本?您是否嘗試使用Visual Studio 2013及更高版本? –

回答

2

當我在Visual Studio中發佈,但只要我運行的MSBuild命令,然後它會創建一個PrecompiledWeb文件夾,並把代碼中有它的偉大工程。

該網站項目的發佈過程沒有深入到構建過程。對於網站項目,因爲沒有正式的構建過程,所以我們沒有什麼可以真正擴展。

創建在VS發佈配置文件以下內容的創建之後:下的App_Data/PublishProfiles

1)發佈配置文件(文件.pubxml)

2)website.publishproj中的根網站

website.publishproj的目的是爲了方便命令行發佈。然後,你可以嘗試使用如下命令:

C:\Program Files (x86)\Microsoft Visual Studio 14.0>msbuild "C:\Users\UserName\Documents\Visual Studio 2015\WebSites\WebSite1\website.publishproj" /p:deployOnBuild=true /p:publishProfile=WebsiteTestDemo /p:VisualStudioVersion=14.0 

enter image description here

之後,你會發現它不創建PrecompiledWeb文件夾和發佈使用在配置文件中的設置:

enter image description here

注意:發佈文件應該是website.publishproj而不是WebSite1(1).sln文件。

+0

我正在使用VS2015 – R4nc1d

+0

@ R4nc1d,謝謝你的回覆。根據你的回覆,我已經更新了我的答案,並且在我的機器上正常工作,你可以檢查它是否對你有幫助。 –

+0

好,讓我試試,ps。投票支持 – R4nc1d