Skip to content

Jenkins - mac电脑

bash
# 
$ ls -l /opt/homebrew/opt
lrwxr-xr-t@ 1 root  admin  29  9月  4  2023 jenkins-lts -> ../Cellar/jenkins-lts/2.414.1

#

完整元启动命令错误后修复,java版本问题

bash
$ /opt/homebrew/opt/openjdk@17/bin/java -Dmail.smtp.starttls.enable=true -jar /opt/homebrew/opt/jenkins-lts/libexec/jenkins.war --httpListenAddress=0.0.0.0 --httpPort=8080
Running with Java 17 from /opt/homebrew/Cellar/openjdk@17/17.0.8.1/libexec/openjdk.jdk/Contents/Home, which is older than the minimum required version (Java 21).
Supported Java versions are: [21, 25]
See https://jenkins.io/redirect/java-support/ for more information.

$ /opt/homebrew/opt/openjdk@21/bin/java -Dmail.smtp.starttls.enable=true -jar /opt/homebrew/opt/jenkins-lts/libexec/jenkins.war --httpListenAddress=0.0.0.0 --httpPort=8080

brew start错误

$ brew services list
Name        Status   User File
jenkins-lts error  1 root ~/Library/LaunchAgents/homebrew.mxcl.jenkins-lts.plist

原因

brew services start jenkins-lts 生成的~/Library/LaunchAgents/homebrew.mxcl.jenkins-lts.plist 中的java 版本号是错误的

修改启动
/opt/homebrew/opt/jenkins-lts/bin/jenkins-lts

#修改生成文件的模版
/opt/homebrew/opt/jenkins-lts/homebrew.mxcl.jenkins-lts.plist

问题

bash
$ brew services start jenkins-lts
Bootstrap failed: 5: Input/output error
Try re-running the command as root for richer errors.
Error: Failure while executing; `/bin/launchctl bootstrap gui/501 /Users/jing/Library/LaunchAgents/homebrew.mxcl.jenkins-lts.plist` exited with 5.

# 
$ brew services list

$ brew services stop jenkins-lts
$ brew services start jenkins-lts

查看 /Users/jing/Library/LaunchAgents/homebrew.mxcl.jenkins-lts.plist文件,文件内容看下方附录

重启Jenkins

bash
#杀掉占用8080端口的进程
$ sudo kill -9 $(lsof -t -i :8080)
#重启服务
$ brew services start jenkins-lts

更新Homebrew

bash
#更新 Homebrew 本身:将 Homebrew 的核心代码(包括包管理工具和相关脚本)更新到最新版本。
$ brew update
#升级已安装的软件:将系统中通过 Homebrew 安装的软件更新到最新版本(基于最新的公式)
$ brew upgrade

安装JDK21

bash
$ brew search openjdk
==> Formulae
openjdk      openjdk@11   openjdk@17   openjdk@21
==> Casks
microsoft-openjdk                       microsoft-openjdk@17

$ brew install openjdk@21

设置全局默认java版本

shell
export JAVA_HOME=$(/usr/libexec/java_home)
export PATH="$JAVA_HOME/bin:$PATH"

附录1

cat ~/Library/LaunchAgents/homebrew.mxcl.jenkins-lts.plist
    ~/Library/LaunchAgents/homebrew.mxcl.jenkins-lts.plist
/Users/jing/Library/LaunchAgents/homebrew.mxcl.jenkins-lts.plist

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>Label</key>
	<string>homebrew.mxcl.jenkins-lts</string>
	<key>LimitLoadToSessionType</key>
	<array>
		<string>Aqua</string>
		<string>Background</string>
		<string>LoginWindow</string>
		<string>StandardIO</string>
		<string>System</string>
	</array>
	<key>ProgramArguments</key>
	<array>
		<string>/opt/homebrew/opt/openjdk@17/bin/java</string>
		<string>-Dmail.smtp.starttls.enable=true</string>
		<string>-jar</string>
		<string>/opt/homebrew/opt/jenkins-lts/libexec/jenkins.war</string>
		<string>--httpListenAddress=0.0.0.0</string>
		<string>--httpPort=8080</string>
	</array>
	<key>RunAtLoad</key>
	<true/>
</dict>
</plist>

上次更新时间:

最近更新