如何在 MSBuild 中获取目标操作系统
How to get the target operating system in MSBuild
我正在尝试设置一个 属性 我们的构建目标 os。
我想知道当我们 运行 这些命令时我们是针对 windows 还是 Linux。
dotnet publish -c Release -r win10-x64
或
dotnet publish -c Release -r linux-x64
变量$(OS)
总是显示Windows_NT
是否有预定义变量可以告诉我目标是 Windows 还是 Linux?
我找不到为此预定义的变量,但是,我能够创建一个。
<Target Name="AfterPublishTarget" AfterTargets="Publish">
<PropertyGroup>
<IsWindows>$(PublishDir.Contains('win'))</IsWindows>
<IsLinux>$(PublishDir.Contains('linux'))</IsLinux>
</PropertyGroup>
</Target>
我希望这对其他人有帮助。
我正在尝试设置一个 属性 我们的构建目标 os。
我想知道当我们 运行 这些命令时我们是针对 windows 还是 Linux。
dotnet publish -c Release -r win10-x64
或
dotnet publish -c Release -r linux-x64
变量$(OS)
总是显示Windows_NT
是否有预定义变量可以告诉我目标是 Windows 还是 Linux?
我找不到为此预定义的变量,但是,我能够创建一个。
<Target Name="AfterPublishTarget" AfterTargets="Publish">
<PropertyGroup>
<IsWindows>$(PublishDir.Contains('win'))</IsWindows>
<IsLinux>$(PublishDir.Contains('linux'))</IsLinux>
</PropertyGroup>
</Target>
我希望这对其他人有帮助。