Visual Studio 2013 Web部署失败

Ion*_*316 3 msdeploy webdeploy visual-studio-2013

我刚刚安装了VS 2013,从VS 2010升级.创建一个曾经在2010年工作的Web部署包zip文件.使用VS 2013的Publish Web功能发布到Web Deploy Package,我收到以下错误:

Web部署任务失败.(无法创建类型'manifest'和路径'D:\ dev\DMWeb\DMWebClient\obj\Test\Package\DMWebClient.SourceManifest.xml'的对象.有关详细信息,请访问:http: //go.microsoft.com/fwlink /?LinkId = 221672#ERROR_EXCEPTION_WHILE_CREATING_OBJECT.)

"Web发布活动"选项卡中的详细信息显示以下内容:

使用D:\ dev\DMWeb\DMWebClient\Web.Test.config将Web.config转换为obj\Test\TransformWebConfig\transformed\Web.config.Auto ConnectionString将Views\Web.config转换为obj\Test\CSAutoParameterize\transformed\Views\Web.config.Auto ConnectionString将obj\Test\TransformWebConfig\transformed\Web.config转换为obj\Test\CSAutoParameterize\transformed\Web.config.

将所有文件复制到下面的临时位置以进行包/发布:obj\Test\Package\PackageTmp.

打包到D:\ dev\DMWeb\DMWebClient\obj\Test\Package\DMWebClient.zip.

C:\ Program Files(x86)\ MSBuild\Microsoft\VisualStudio\v12.0\Web\Microsoft.Web.Publishing.targets(3883,5):

错误ERROR_EXCEPTION_WHILE_CREATING_OBJECT:Web部署任务失败.(无法创建类型'manifest'和路径'D:\ dev\DMWeb\DMWebClient\obj\Test\Package\DMWebClient.SourceManifest.xml'的对象.

有关详情,请访问:http: //go.microsoft.com/fwlink/?LinkId = 221672 #ERROR_EXCEPTION_WHILE_CREATING_OBJECT.)

包裹失败.

在VS 2010中,我不得不以管理员的身份运行它来部署工作,我也在这里这样做.我还尝试将项目文件夹的完全控制权限授予NETWORK SERVICE,LOCAL SERVICE,Authenticated Users和我.

Package文件夹中,有PackageTmp文件夹(看起来不错),以及DMWebClient.SourceManifest.xml文件,就是这样.在VS 2010中,那里有更多文件.

DMWebClient.SourceManifest.xml包含:

<?xml version="1.0" encoding="utf-8"?>
<sitemanifest>
  <IisApp path="D:\dev\DMWeb\DMWebClient\obj\Test\Package\PackageTmp" />
  <setAcl path="D:\dev\DMWeb\DMWebClient\obj\Test\Package\PackageTmp" setAclResourceType="Directory" />
  <setAcl path="D:\dev\DMWeb\DMWebClient\obj\Test\Package\PackageTmp" setAclUser="anonymousAuthenticationUser" setAclResourceType="Directory" />
  <setAcl path="D:\dev\DMWeb\DMWebClient\obj\Test\Package\PackageTmp\App_Data" setAclResourceType="Directory" setAclAccess="Write" />
  <setAcl path="D:\dev\DMWeb\DMWebClient\obj\Test\Package\PackageTmp/DMWeb.config" setAclResourceType="File" setAclAccess="Read,Write" />
</sitemanifest>
Run Code Online (Sandbox Code Playgroud)

在VS 2010中,包含DMWeb.config的最后一行不存在.最重要的是,它的路径是错误的.它应该在App_Data文件夹下. DMWeb.configWeb.config中指定如下:

<appSettings file="DMWeb.config">
Run Code Online (Sandbox Code Playgroud)

任何帮助将不胜感激.

小智 6

如果项目中有任何文件已从文件系统中移动,删除或重命名,以致Visual Studio不知道在何处找到它们,也会发生这种情况。


Wol*_*lf5 5

我的错误几乎完全相同:

C:\ Program Files(x86)\ MSBuild\Microsoft\VisualStudio\v12.0\Web\Microsoft.Web.Publishing.targets(3883):Web部署任务失败.(无法创建类型'manifest'和路径'D:\ B\280\Binaries_PublishedWebsites\ProjectName\ProjectName.SourceManifest.xml'的对象.有关详细信息,请访问:http: //go.microsoft.com/fwlink/?LinkId = 221672#ERROR_EXCEPTION_WHILE_CREATING_OBJECT.)

我发现的原因是在ProjectName.SourceManifest.xml文件中.

有一条线: <appHostConfig path="Default Web Site/ProjectName" />

如果构建机器上不存在此Web应用程序和站点,则会发生错误.一旦我在同一个站点上创建了一个具有相同名称的虚拟webapp站点,它就构建了!

并通过使用MsBuild参数删除该部分来解决:/ p:IncludeIisSettings = false/p:IncludeAppPool = false(我将那些2设置为true,因此只有在它们为true时才适用)


Ion*_*316 2

发现我有一个.wpp.targetsVS 2010 的旧文件,它的名字叫~DMWebClient.wpp.targets. 在VS 2010中,通过重命名它,它会忽略它并且不应用它。看起来 VS 2013 会应用任何.wpp.targets文件,无论文件名如何。

通过删除该文件,Web 部署将再次工作。