使用 Cake build 构建 Net Framework Web 应用程序引用网络标准库
Build Net Framework web application referencing net-standard library with Cake build
我有两个项目:NET Standard
class 库和常规 NET Framework Web 应用程序。 Web 应用程序引用 class 库。
我用Visual Studio 2017 Preview
.
当我尝试使用 MSBuild
命令通过 Cake
构建解决方案时,我收到了不受支持的项目消息:
error MSB4041: The default XML namespace of the project must be the MSBuild XML namespace. If the project is authored in the
MSBuild 2003 format, please add xmlns="http://schemas.microsoft.com/developer/msbuild/2003" to the <Project> element. If the project has been authored in the old 1.0 or 1.2 format, please convert it to MS
Build 2003 format.
如果我尝试使用 DotNetCoreBuild
我得到:
error MSB4019: The imported project "C:\Program Files\dotnet\sdk.0.2-vspre-006949\Microsoft\VisualStu
dio\v10.0\WebApplications\Microsoft.WebApplication.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk.
但是 Visual Studio 成功构建了解决方案。
最新的 MSBuild
版本具有构建 NET Standard
库的目标。问题出在Visual Studio Preview
安装路径:Cake
找不到最新的MSBuild
.
如果您尝试在 MSBuildToolVersion 中指定 VS2017
,它也会失败。
您必须手动指定 MSBuild
可执行文件才能使其与 VS Preview
一起使用。
string msBuildPath = @"c:\Program Files (x86)\Microsoft Visual Studio\Preview\Professional\MSBuild.0\Bin\MSBuild.exe";
MSBuild("../NetStdExample.sln", new MSBuildSettings {
Verbosity = Verbosity.Minimal,
ToolPath = msBuildPath
});
@Gary Ewan Park 更新:tool 用于确定最新的 VS 安装。
我有两个项目:NET Standard
class 库和常规 NET Framework Web 应用程序。 Web 应用程序引用 class 库。
我用Visual Studio 2017 Preview
.
当我尝试使用 MSBuild
命令通过 Cake
构建解决方案时,我收到了不受支持的项目消息:
error MSB4041: The default XML namespace of the project must be the MSBuild XML namespace. If the project is authored in the
MSBuild 2003 format, please add xmlns="http://schemas.microsoft.com/developer/msbuild/2003" to the <Project> element. If the project has been authored in the old 1.0 or 1.2 format, please convert it to MS
Build 2003 format.
如果我尝试使用 DotNetCoreBuild
我得到:
error MSB4019: The imported project "C:\Program Files\dotnet\sdk.0.2-vspre-006949\Microsoft\VisualStu
dio\v10.0\WebApplications\Microsoft.WebApplication.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk.
但是 Visual Studio 成功构建了解决方案。
最新的 MSBuild
版本具有构建 NET Standard
库的目标。问题出在Visual Studio Preview
安装路径:Cake
找不到最新的MSBuild
.
如果您尝试在 MSBuildToolVersion 中指定 VS2017
,它也会失败。
您必须手动指定 MSBuild
可执行文件才能使其与 VS Preview
一起使用。
string msBuildPath = @"c:\Program Files (x86)\Microsoft Visual Studio\Preview\Professional\MSBuild.0\Bin\MSBuild.exe";
MSBuild("../NetStdExample.sln", new MSBuildSettings {
Verbosity = Verbosity.Minimal,
ToolPath = msBuildPath
});
@Gary Ewan Park 更新:tool 用于确定最新的 VS 安装。