msbuild - Visual Studio 2019 v16.3 及更高版本无法使用 netcoreapp3.0 MSBuild 任务构建 netcoreapp3.0 项目的解决方法
问题描述
最近,我尝试从多目标 .NET Core 3.0 项目(最初支持的目标:netfx472、netcoreapp3.0 和 netstandard2.1)中删除对 .NET Framework 目标的支持。该项目使用以 netfx472 和 netcoreapp3.0 为目标的自定义 MSBuild 任务,并根据构建的目标进行加载。
在尝试删除 .NET Framework 目标支持时,我已删除所有 netfx 目标并删除了对使用 MSBuild netfx 目标构建的自定义任务的依赖。我现在面临的问题是,尽管能够从命令行为 .netcoreapp3.0 和 netstandard2.1 目标构建项目,但任何使用 Visual Studio 16.3.4 或更高版本或 16.4.2 预览构建它的尝试都会失败,原因是无法加载自定义 MSBuild 任务。这样做的副作用是 Visual Studio 不支持未正确构建的项目中的详细 IntelliSense(IntelliSense 被简化为仅支持类型和局部变量的基本形式 - 不支持更复杂的功能:成员选择,表达式或语句语法助手。此外,代码修复停止工作。)
问题似乎在于 Visual Studio 使用了针对 MSBuild 发行版的 netfx,它是 Visual Studio 附带的,而不是针对 MSBuild 发行版的 .NET Core,这会阻止在 VS 启动构建期间加载针对 .netcoreapp3.0 的 MSBuild 自定义任务程序集。
我在以下问题上失败了VS 2019 v16.3.4 和 v16.4.prev2 无法构建 netcoreapp3.0 项目,这些项目使用针对 netcoreapp3.0的自定义 MSBuild 工具和dotnet/project-system
项目,但是,对于任何解决方法的建议将不胜感激,因为它会解锁我的工作。
解决方案
抱歉,答案可能是否定的,根据产品团队的信息,构建项目时不支持msbuild task
基于的自定义。.net core
.net core
看来这个功能要支持pure还有很长的路要走.net core
,我建议你可以尝试通过建议一个功能选项在DC中发布功能请求,它可能会加快进度让支持pure更快。在这里分享链接,有兴趣的我们会投票给你,希望对你有所帮助:)msbuild task
.net core
推荐阅读
- node.js - 在 json 中加入多个 json 文件,并将其路径作为键
- python - 如何将位于同一行的 Kivy 小部件移得更远?
- pascal - 其他机器的构建程序
- kubernetes - Kubernetes nginx入口控制器不工作
- python - 使用 Keras / Tensorflow 的网络中的初始权重
- c++ - ReactNative Error {/F14Table.cpp 正常 i386 c++ com.apple.compilers.llvm.clang.1_0.compiler}
- python - 将频率列表转换回原始值
- html - 彩色框中的文本
- r - 如何在忽略字符向量的同时为列的数字单元格着色,代表 R 的 gt 包中的 NA
- python-3.x - 将可变数量的 PyQt 切换绑定到相同数量的函数