我试图在OSX上使用Jenkins在本地设置CI,但在尝试执行shell命令时遇到了一些问题。以下是我试图在Jenkins配置中运行的命令:
cd /Users/username/projectname
dotnet build HD-Project.sln
然而,当我尝试构建项目时,我得到了以下错误:
Building in workspace /Users/Shared/Jenkins/Home/workspace/HD-Build
[HD-Build] $ /bin/sh -xe
/Users/Shared/Jenkins/tmp/jenkins2699993427980474696.sh
+ cd /Users/username/projectname
+ dotnet build HD-Project.sln
/Users/Shared/Jenkins/tmp/jenkins2699993427980474696.sh: line 3:
dotnet: command not found
Build step 'Execute shell' marked build as failure
Finished: FAILURE
任何帮助将不胜感激,谢谢。
3条答案
按热度按时间dba5bblo1#
我让它工作起来,并成功地通过Jenkins执行的shell运行
dotnet
命令。要运行
dotnet
命令,需要在Jenkins构建服务器上安装.NET SDK。有关如何安装.NET SDK的说明可以在这里找到:https://www.microsoft.com/net/learn/get-started/macos适用于所有操作系统- Linux、MacOS和Windows。omjgkv6w2#
这是因为安装包没有将dotnet可执行文件的位置添加到PATH环境变量中。这个问题在https://github.com/dotnet/core/blob/master/cli/known-issues.md#users-of-zsh-z-shell-dont-get-dotnet-on-the-path-after-install中提到,但显然它不仅影响zsh用户。您需要手动添加此路径。
在我的例子中,路径是/usr/local/share/dotnet,所以我运行(从命令行):
来源:https://github.com/dotnet/cli/issues/4357
clj7thdc3#
对于那些使用Docker容器的人,请阅读本文:https://medium.com/@nestor.panu/building-an-asp-net-6-application-on-docker-based-jenkins-d6c8aaf94756
基本上:
1.安装这些Jenkins插件:
MSBuild
和.NET SDK Support
1.转到Jenkins配置页面,在新的.NET SDK部分下,添加您选择的新SDK(例如.NET 6)
1.在Jenkins作业中,确保选择了在步骤2中创建的. NETSDK
1.还要选择
.NET SDK Support
附带的 Package 器构建之一1.运行您的工作。
1.如果遇到错误134,请在docker容器上安装
libicu-dev
。