2016-09-01 116 views
0

使用visual studio我能夠配置一個配置文件來創建一個web部署包zip。我將該配置文件命名爲「部署」。我希望能夠從CI做到這一點。這是我迄今爲止的命令行。我一直在選項的每個組合我已經在十幾個博客帖子看到那裏投擲:構建web部署包的問題

msbuild HelloBeanstalk4.csproj /p:DeployOnBuild=true /p:PublishProfile=deploy /p:Configuration=Release;Platform="Any CPU" /p:PackageLocation="D:\x.zip" /p:OutputPath="d:" /p:DeployTarget=deploy /tv:14.0 

當我運行這個它只是吐出/ bin中的內容,以及與一個_PublishedWebsites目錄網站中的文件。它不會創建一個zip文件。我使用VS2013來構建4.0或4.5站點。

我在做什麼錯?

回答

0

在Visual Studio中什麼是設置Publish | Connection | Package Location的文件路徑? Mine設置爲obj\Release\Package\package.zip

當您在Visual Studio中發佈時,它是否會在該位置創建zip文件?

當我與它建立在我的配置文件中指定的位置的包拉鍊的.csproj的文件夾中運行以下命令:

msbuild /p:DeployOnBuild=true /p:PublishProfile=deploy 

UPDATE:

使用VS 2013專業版,下面是我的./Properties/PublishProfiles/deploy.pubxml文件的內容:

<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 
    <PropertyGroup> 
    <WebPublishMethod>Package</WebPublishMethod> 
    <LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration> 
    <LastUsedPlatform>Any CPU</LastUsedPlatform> 
    <SiteUrlToLaunchAfterPublish /> 
    <LaunchSiteAfterPublish>True</LaunchSiteAfterPublish> 
    <ExcludeApp_Data>False</ExcludeApp_Data> 
    <DesktopBuildPackageLocation>obj\Release\Package\package.zip</DesktopBuildPackageLocation> 
    <PackageAsSingleFile>true</PackageAsSingleFile> 
    <DeployIisAppPath /> 
    <PublishDatabaseSettings> 
     <Objects xmlns=""> 
     ... 
     </Objects> 
    </PublishDatabaseSettings> 
    </PropertyGroup> 
    <ItemGroup> 
    <MSDeployParameterValue Include="$(DeployParameterPrefix)DefaultConnection-Web.config Connection String" /> 
    </ItemGroup> 
</Project> 

相比,你pubxml文件的Ÿ顯着差異?

+0

是的,它發佈到我使用Visual Studio時指定的位置。當我使用命令行時,它不會在源代碼樹中的任何位置創建zip文件。事實上,如果我使用你的命令,它會給我一個錯誤,要求我提供Configuration,Platform和OutputPath – awl