【问题标题】:dotnet publish Not Deployingdotnet publish 未部署
【发布时间】:2020-09-23 07:15:17
【问题描述】:

我正在尝试在我的 .NET Core 2.0 项目上执行 Web 部署。从 Visual Studio 的“发布”功能中手动部署可以正常工作。

从命令行,我正在执行:

dotnet publish TechsportiseOnline/TechsportiseOnline.csproj -c Release /p:PublishProfile="Properties\PublishProfiles\techsportise.com - Web Deploy" /p:Username="***" /p:Password="***"

命令返回成功,完全没有错误 - 即使详细程度设置为诊断。出于所有意图和目的,Visual Studio 认为它是成功的。

但是当我访问该网站时,我所做的更改显然不存在。我已经尝试访问隐身并清除缓存,但更改根本没有部署。

我尝试过使用dotnet build /p:DeployOnBuild=true 的相同命令,也尝试过手动指定所有参数

dotnet build TechsportiseOnline/TechsportiseOnline.csproj -c Release /p:DeployOnBuild=true /p:DeployIisPath="techsportise.com" /p:MSDeployServiceURL="***" /p:Username="***" /p:Password="***" /p:SkipExtraFilesOnServer=true /p:AllowUntrustedCertificate=true

我不认为这是本地系统问题,因为我在使用 Bitbucket Pipelines 时遇到了同样的问题 - 即使部署后没有可见的更改也报告成功。我认为这不是服务器问题,因为它在 VS 中手动执行 Publish 时会起作用。

有什么想法吗?

【问题讨论】:

  • “Visual Studio 认为它是成功的”——这不太可能。更有可能 Visual Studio 根本不知道它,因为它不参与该过程。同样,如果您在 Visual Studio 中将详细程度设置为“诊断”,您的命令行进程不会意识到这一点。
  • 这是一个很好的观点。在这种情况下,我的意思是,命令行日志不会抛出错误以表明它没有成功。
  • 我认为您应该重新启动 IIS AppPool 以查看更改。

标签: .net-core msbuild .net-core-2.0


【解决方案1】:

您正在使用网络浏览器查找更改。而是验证文件是否已更改。我假设他们和你的问题是浏览器正在缓存网站。尝试使用ctr + F5 刷新或尝试清除浏览器数据。

【讨论】:

    【解决方案2】:

    您是从具有相同项目文件的不同文件夹执行命令,或者您有一些缓存问题。在浏览器上尝试 Ctrl+shift+delete 并清除所有内容或打开一个新的隐身窗口并重试。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-12-14
      • 1970-01-01
      • 2018-02-27
      • 1970-01-01
      • 1970-01-01
      • 2021-01-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多