The task factory "CodeTaskFactory" is not supported on the .NET Core version of MSBuild
在自己的VisualStudio for Mac可以成功编译,放到Linux上就build失败了。关键我不知道CodeTaskFactory是什么,在哪里用到了这个东西。摸不着头脑。求大佬指点迷津。
.csproj 中的配置有问题,还在使用 .NET Framework 相关的东西,VisualStudio for Mac 是通过 Mono 完成编译的
如果是 ASP.NET MVC 项目的迁移,直接将 .csproj 全部替换为下面的内容,然后添加缺少的应用
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>netcoreapp2.0</TargetFramework>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.All" Version="2.0.5" />
</ItemGroup>
<ItemGroup>
<DotNetCliToolReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="2.0.2" />
</ItemGroup>
</Project>
仔细核对过了,csproj是netcoreapp2.0的配置,但是还是报错,是不是因为我在包应用的时候,用到了.net framework的包,导致这个错误呢
已经解决了,谢谢啦!
问题解决了,去掉一个包引用:
<PackageReference Include="Microsoft.CodeDom.Providers.DotNetCompilerPlatform" Version="1.0.8" />