6

我正在开发一个中等规模的 WebForms 项目。由于这里管理的特殊性,我必须将站点上传到远程服务器才能进行测试(没有本地主机测试)。我在 Visual Studio 2008 中使用“发布”命令。有时,它甚至可以工作。大多数时候,我莫名其妙地在左下角得到一个“发布失败”,没有更多细节。

我阅读的几篇 google 文章/论坛帖子建议使发布操作的目标本地文件夹对每个人都可读/可写。没有帮助。

有没有办法获得关于为什么在 VS2008 中发布失败的更多详细信息,如果没有,是否有更好的方法来进行这些部署?与实际调试相比,我花费更多时间构建/推送到 Web 服务器。

4

11 回答 11

4

值得检查输出窗口。我刚刚发布失败,因为我删除了 VS 之外的图像,所以 VS 抱怨找不到图像,但此信息仅显示在输出窗口中。

有关更多信息,请参阅此链接:http: //ericvickes.com/2009/08/find-out-why-visual-studios-publish-fails/

于 2010-09-16T09:36:17.607 回答
3

当标记(!)中有错误时,它会发生在我们身上。坏事是 VS 只会吞下错误并告诉你失败。

我的建议是使用 MSBuild 从命令行运行您的发布。它不是那么简单,但它有效(一旦你进入它)。

于 2009-04-29T21:25:15.453 回答
2

从那以后,我发现这些特定发布失败的原因是由于选中了“删除现有文件”选项。在 Windows Vista 上以非管理员帐户使用 Visual Studio 2008 可能会在尝试删除现有文件时导致权限错误。遇到 Visual Studio 没有足够权限删除的文件后,发布将静默失败。在 Vidual Studio 之外手动删除文件后,发布功能正常。

我在 Windows 7 上没有遇到过这个问题;我假设 Windows 7 中的 UAC 更改解决了这个问题。

于 2009-11-04T05:59:47.440 回答
1

我主要使用 Web 表单,每天都会遇到这个问题。在我看来,当它无法删除它试图替换的文件时,发布失败。即使我没有打开任何文件,有时它仍然会失败。不知道为什么。不仅 VS 发布经常失败,而且速度也非常缓慢。我只是发布到空的本地目录并使用单独的 FTP 客户端上传文件。这是更多的工作,但有效。

于 2009-05-01T00:43:08.463 回答
1

您可能不是这种情况,但我在发布网站时看到过这种情况。如果app_offline.htm文件未从您的项目中排除(如果您使用此文件),则发布将失败。

于 2009-05-01T03:20:09.117 回答
1

我也发生了同样的事情。我所做的是包含项目中未包含的图像文件并删除未使用的图像。

于 2009-12-10T12:41:56.087 回答
0

在与类似问题苦苦挣扎约 30 分钟后,不知道是什么原因导致它关闭了 VS 并重新打开了我的项目。开始工作正常。不知道为什么,但它奏效了。

于 2009-11-02T06:56:19.087 回答
0

您应该始终停止在您要发布到的机器上运行的 IIS 实例。谷歌“ iisreset ”这个词。其他托管服务提供商,如 DiscountAsp 和 Arvixe,为您提供远程“停止”和“启动”其 IIS 上的应用程序池的工具。这是非常必要的,因为 IIS 可能已将某些文件锁定为“正在使用”,因此当它尝试覆盖它们时,您的发布会失败。发布完成后,只需重新启动 IIS(如果您使用的是第 3 方托管服务提供商,则从 Web 工具中按“开始”)。

当所有其他方法都失败时,请检查您的“输出”窗口(Visual Studio 底部“错误列表”右侧的选项卡)。在发布失败后滚动浏览所有内容并查找任何显示“无法添加”的内容。如果您在同一次发布中仍然看到相同的“无法添加”错误,则 ftp 进入该文件夹,手动删除有问题的文件,然后再次尝试发布。

于 2011-09-13T19:40:52.687 回答
0

当我的 ProjectName.Publish.xml 文件是只读文件时,我得到了这个。一旦我从源代码管理中检查了文件,我就不再收到错误并且可以发布了。

于 2013-11-27T13:09:30.720 回答
0

只是为了添加到这个线程中,我发现出于某种奇怪的原因,只有 Mercurial 文件被发布到服务器,其他所有内容都没有被复制。

另一个奇怪的事情是只有Debug配置可用;释放无处可见。

在阅读了围绕 SO 的其他线程后,我发现 VS 2010 和 2012 有很多,但对于 2008 年的相同问题来说并没有太多。

我发现解决方法是删除[solution]suo文件,然后尝试发布。这似乎完成了这项工作,尽管它需要很长时间才能完成。

于 2015-02-20T12:04:33.517 回答
0

我发现并在我的情况下工作。它是使用不同版本的VS。

我最近遇到了这个问题,该解决方案在 VS2015 构建、编译和测试中完美运行。

但是,当我尝试发布时默默地失败了。 在此处输入图像描述 因此,我关闭了解决方案并使用 VS2017 打开它,它对项目/解决方案使用相同的文件结构。然后重建它并发布没有任何问题。

在此处输入图像描述

我相信它可能与VS相关并且调试起来很复杂。

如果您在本地计算机上使用多个 Vs 实例,这是一种解决方法。

于 2019-10-28T22:50:41.863 回答