【问题标题】:msbuild.exe does not run on Linux VM in Azuremsbuild.exe 不在 Azure 中的 Linux VM 上运行
【发布时间】:2019-07-22 02:08:29
【问题描述】:

我正在尝试使用 Jenkins 来运行我的单元测试。我已经为构建步骤“使用 MSBuild 构建 Visual Studio 项目”制作了一个 Jenkins 项目。我的 Jenkins 服务器安装在 Azure 中的 linux 虚拟机上。

您可以在 Jenkins UI 中看到它:

当我运行构建时,我得到这个控制台输出:

Path To MSBuild.exe: msbuild.exe
FATAL: Unable to use this plugin on this kind of operation system
Executing the command msbuild.exe /ContinuousIntegration/ContinuousIntegration.sln from 
/var/lib/jenkins/workspace/CSHARP_CI_TEST - UNITTEST
[CSHARP_CI_TEST - UNITTEST] $ msbuild.exe 
/ContinuousIntegration/ContinuousIntegration.sln
Build step 'Build a Visual Studio project or solution using MSBuild' changed 
build result to FAILURE 
Build step 'Build a Visual Studio project or solution using MSBuild' marked 
build as failure
Finished: FAILURE

我认为这里的问题是我试图在 Linux VM 上使用 msbuild.exe。是否有解决方法或无法做到这一点?

我尝试通过 linux 终端在 vm 上使用 msbuild.exe,但无法运行。

【问题讨论】:

  • 那么为什么这被否决了?

标签: linux azure jenkins msbuild jenkins-plugins


【解决方案1】:

要满足您的要求,您必须在 Azure Jenkins Linux VM 中安装“.NET Core SDK”,然后您可以简单地使用“执行 shell”构建步骤和命令“dotnet build ContinuousIntegration/ContinuousIntegration.sln”

要在您的 Azure Jenkins Linux VM 中安装“.NET Core SDK”,请转到 https://dotnet.microsoft.com/learn/dotnet/hello-world-tutorial/install 并单击该页面中的“Linux”,然后选择所需的 Linux 发行版并按照提供的步骤操作。

有关各种操作系统的 MSBuild 支持的更多信息,请参阅https://github.com/Microsoft/msbuild/blob/master/documentation/wiki/Building-Testing-and-Debugging-on-.Net-Core-MSBuild.md

仅供参考,我已经测试并重现了您的场景并遇到了您提到的相同错误,然后我按照上述过程成功解决了问题。所以我希望这会有所帮助。干杯!!

PS:在你的 shell 脚本中,你必须 cd 到正确的文件夹才能工作。

【讨论】:

  • 这对我有所帮助,但我现在得到的错误是:MSBUILD:错误 MSB1009:项目文件不存在。开关:/ContinuousIntegration/ContinuousIntegration.sln 构建步骤 'Execute shell' 将构建标记为失败已完成:FAILURE
  • 将我上面的答案中的 sln 文件路径从“/ContinuousIntegration/ContinuousIntegration.sln”更正为“ContinuousIntegration/ContinuousIntegration.sln”。请注意,我正在考虑 sln 文件位于名为 ContinuousIntegration 的目录下,该目录位于您的 Jenkins 作业的工作区下。如果您的 sln 文件位于不同的路径中,请相应更改完整路径。
  • 它可以工作,但在你的 shell 脚本中你必须 cd 到正确的文件夹才能工作。我已将您的答案更改为 PS
  • 批准编辑。很高兴它对你有用。 :)
猜你喜欢
  • 2012-08-25
  • 1970-01-01
  • 2018-05-13
  • 1970-01-01
  • 1970-01-01
  • 2017-02-10
  • 1970-01-01
  • 2016-04-15
  • 2019-10-26
相关资源
最近更新 更多