4

我刚刚安装了 VS 2013,从 VS 2010 升级。创建用于在 2010 年工作的 Web 部署包 zip 文件。使用 VS 2013 的发布 Web 功能发布到 Web 部署包,我收到以下错误:

Web 部署任务失败。(无法创建“清单”类型和路径“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 部署任务失败。(无法创建“清单”类型和路径“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>

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

<appSettings file="DMWeb.config">

任何帮助将不胜感激。

4

7 回答 7

7

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

于 2014-05-20T19:14:05.783 回答
5

我的错误几乎相同:

C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v12.0\Web\Microsoft.Web.Publishing.targets (3883):Web 部署任务失败。(无法创建“清单”类型和路径“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" />

如果 buildmachine 上不存在此 webapp 和站点,则会发生错误。一旦我在同一个站点上创建了一个具有相同名称的虚拟 webapp 站点,它就构建了!

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

于 2014-02-28T11:59:18.683 回答
2

发现我有一个.wpp.targets来自 VS 2010 的旧文件,它被称为~DMWebClient.wpp.targets. 在 VS 2010 中,通过重命名它,它会忽略它而不应用它。.wpp.targets无论文件名如何,VS 2013 似乎都适用任何文件。

通过删除该文件,网络部署再次工作。

于 2013-11-01T14:02:19.807 回答
2

以为我会添加,因为其他答案都没有解决我的问题,尽管可能与 Lightswitch Web Deploy 比 ASP.NET Web Deploy 更相关(尽管 OP 没有指定哪个)。

标准 Lightswitch 模板解决方案中有三个项目。其中两个可能被命名为lightswitchapp.HTMLClientand lightswitchapp.Server。这些都不应该部署!您应该部署第三个项目lightswitchapp

我一直收到这样的错误,这导致我进入这个页面。

Web 部署任务失败。(无法创建“清单”类型的对象和路径“清单 xml 隐藏”。了解更多信息:http: //go.microsoft.com/fwlink/ ?LinkId=221672#ERROR_EXCEPTION_WHILE_CREATING_OBJECT 。)

于 2016-02-03T20:23:49.863 回答
1

上面的很好的答案,关于 Lightswitch Web 部署......在任何地方都找不到任何关于它的东西......一直认为 MS 故意破坏了这个,因为他们不想再支持 LightSwitch......无论如何,一旦你去了通过从 LightSwitch 模板发布主项目的步骤,如果您推送到本地 IIS,就会出现一个关于发布参数的新问题。对于所有为此苦苦挣扎的人...首先安装

  • httpPlatformHandler_amd64.msi
  • WebDeploy_amd64_en-US.msi

然后,确保“Web 部署代理服务”作为服务运行,然后,在 Visual Studio(我在 VS2015 社区)中,在向导的“发布设置”选项卡上,确保您有如下内容:

  1. 服务网址: http://localhost/MSDEPLOYAGENTSERVICE
  2. 站点/应用程序:默认网站\trax01

其中 trax01 是在默认网站下运行的 Web 应用程序的名称(请注意“trax01”之前的反斜杠与设置标签中的斜杠相比。

希望它对其他人有所帮助,因为这东西吃了我的肝脏!:)

于 2016-05-26T16:01:18.500 回答
0

在 Visual Studio 2019 中仍然可能发生同样的异常。对我来说,其他细节是Object of type 'manifest' and path 'manifest xml hidden' cannot be created.

就我而言,问题是文件MsDeployDeclareParameters中的一个项目{ProjectName}.wpp.targets。它试图为下载文件夹设置 ACL 权限,但该文件夹不包含任何文件,因此它不存在于暂存区域中。

将文件添加到下载文件夹解决了问题(就像MsDeployDeclareParameters从文件中删除条目一样{ProjectName}.wpp.targets)。

于 2021-10-24T22:35:15.330 回答
0

我通过将安全性更新到 TLS 1.2 ( X )尝试了许多解决方案

从变量和密码中删除*或特殊字符。

但是后来我发现,我们*的密码在connectionStringin web.config

我更改了密码,它开始为我工作。

于 2021-11-26T19:01:43.640 回答