我刚刚安装了VS 2013,从VS 2010升级。创建一个曾经在2010年工作的Web部署包zip文件。使用VS 2013的发布Web功能发布到Web Deploy Package,我收到以下错误:
Web部署任务失败。 (类型'清单'和路径的对象 'd:\ dev的\ DMWeb \ DMWebClient \ OBJ \测试\包\ 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 \测试\ CSAutoParameterize \转化\查看\ Web.config文件。 Auto ConnectionString将obj \ Test \ TransformWebConfig \ transformed \ Web.config转换为 OBJ \测试\ CSAutoParameterize \转化\ 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.config 在 Web.config 中指定,如下所示:
<appSettings file="DMWeb.config">
非常感谢任何帮助。
答案 0 :(得分:6)
如果项目中的任何文件已从文件系统中移动,删除或重命名,以致Visual Studio不知道在哪里找到它们,也会发生这种情况。
答案 1 :(得分:5)
我的错误完全相同:
C:\ Program Files (86)\的MSBuild \微软\ VisualStudio的\ V12.0 \网络\ Microsoft.Web.Publishing.targets (3883):Web部署任务失败。 ('manifest'类型的对象和 路径 'd:\ B \ 280 \ Binaries_PublishedWebsites \项目名\ 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时才适用)
答案 2 :(得分:2)
发现我有一个来自VS 2010的旧.wpp.targets
文件,它被称为~DMWebClient.wpp.targets
。在VS 2010中,通过重命名它,它将忽略它而不应用它。看起来VS 2013会应用任何.wpp.targets
文件而不管文件名。
通过删除该文件,Web部署将再次运行。
答案 3 :(得分:2)
我想补充一点,因为没有其他答案解决了我的问题,尽管可能与Lightswitch Web Deploy有关,而不是ASP.NET Web Deploy(尽管OP没有指定哪个)。
标准Lightswitch模板解决方案中有三个项目。其中两个可能被命名为lightswitchapp.HTMLClient
和lightswitchapp.Server
。这些都不应该部署!您应该部署第三个项目lightswitchapp
。
我遇到了这样的错误,导致我进入了这个页面。
Web部署任务失败。 (无法创建类型'manifest'和路径'manifest xml hidden'的对象。请访问:http://go.microsoft.com/fwlink/?LinkId=221672#ERROR_EXCEPTION_WHILE_CREATING_OBJECT了解详情。)
答案 4 :(得分:1)
关于Lightswitch Web Deploy 的上述优秀答案...无法在任何地方找到任何相关信息......一直认为MS故意破坏了这一点,因为他们不想再支持LightSwitch了... 在任何情况下,一旦您完成从LightSwitch模板发布主项目的步骤,如果您推送到本地IIS,则会出现关于发布参数的新问题。 对于所有挣扎的人...首先安装
然后,确保“Web部署代理服务”作为服务运行 然后,在Visual Studio中(我在VS2015社区中),在向导的“发布设置”选项卡上,确保您有类似这样的内容:
其中trax01是在默认网站下运行的网络应用程序的名称(请注意“trax01”之前的反斜杠与正斜杠相比较设置的标签。
希望它可以帮助别人,因为这东西吃了我的肝脏! :)