【问题标题】:Unable to publish ASP.NET Core application with "CreateManifestFile" task could not be loaded无法使用“CreateManifestFile”任务发布 ASP.NET Core 应用程序无法加载
【发布时间】:2017-08-07 08:38:04
【问题描述】:

我有一个 ASP.NET Core 应用程序,我可以使用 Web 部署和预配置的发布配置文件通过 Visual Studio 2017 发布它。现在我需要配置 CI 并尝试从命令行实现相同的功能,因此我安装了 @987654322 @并关注this guide

dotnet build -c release /p:DeployOnBuild=true /p:PublishProfile=publish-profile-name

不幸的是,它给出了以下错误:

C:\程序 Files\dotnet\sdk\1.0.4\Sdks\Microsoft.NET.Sdk.Publish\build\netstanda rd1.0\PublishTargets\Microsoft.NET.Sdk.Publish.MSDeploy.targets(227,5): 错误 MSB4062:无法从中加载“CreateManifestFile”任务 程序集 C:\Program Files\dotnet\sdk\1.0.4\Sdks\Microsoft.NET.Sdk.Publish\build\netstandard1.0 ....\tools\netcoreapp1.0\Microsoft.NETCore.Sdk.Publish.Tasks.dll。 确认声明正确,即组装 并且它的所有依赖项都是可用的,并且该任务包含一个 实现 Microsoft.Build.Framework.ITask 的公共类。

如何修复dotnet build 行?

【问题讨论】:

    标签: visual-studio asp.net-core .net-core visual-studio-2017 microsoft-web-deploy


    【解决方案1】:

    如果您的发布配置文件使用 MSDeploy,则无法通过基于 .NET Core 的构建工具 (dotnet build) 构建它。

    查看相关的 GitHub 问题https://github.com/aspnet/websdk/issues/166

    解决方法是使用 VS 2017 安装中的 msbuild /p:Configuration=Release … 而不是 dotnet build

    【讨论】:

    • 我看到了这个讨论,但也注意到了这一点:We have also fixed the task to run on core. So, you should be able to run the below command once the new websdk is released. 所以我认为它已经修复了。这只是网络部署的问题吗?我完全可以将我的发布配置文件切换到 FTP...
    • 我认为评论是关于WebDeployPackage 而不是MSDeploy。 AFAIK 包应该允许您使用 msdeploy.exe 或 IIS GUI 部署生成的 zip 文件。
    • 我已经创建了一个 FTP 部署,并且能够顺利通过此步骤,但不幸的是,新文件没有被复制到具有 Build Succeeded 输出的 ftp 服务器。命令如下:dotnet build /p:DeployOnBuild=true /p:PublishProfile=myprofile-ftp
    • 我建议在链接的 websdk 存储库上打开一个关于该问题的问题
    猜你喜欢
    • 1970-01-01
    • 2017-07-17
    • 2016-09-20
    • 1970-01-01
    • 2016-12-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多