Jenkins 无法在 macOS 10.12 (Sierra) 上启动
Jenkins does not start on macOS 10.12 (Sierra)
将我的 macOS 升级到 Sierra 后,当我使用 launchctl load 启动 Jenkins 时,我无法连接到 localhost:8080。如果我再次调用 launchctl load,我会看到响应 "service already loaded"。默认位置 /var/log/jenkins/ 没有日志文件(在 jenkins-ci.plist 中设置)。我还尝试在那里创建 jenkins.log 并向 jenkins 用户发送 chown,但仍然没有打印任何内容。
如果我尝试使用 java -jar jenkins.war 启动 Jenkins,我可以连接到本地主机,但 Jenkins 作为新安装运行。
我安装了最新的 JRE 1.8。0_102。
如何诊断问题?
正如我在问题中提到的,我安装了 JRE。我安装后JDK,Jenkins可以正常启动
我遇到了同样的问题,安装 JDK 没有成功
但是更改日志目录的权限(在我的例子中 /var/log/jenkins)并重新启动 Jenkins 工作。
似乎移动到 Sierra 更改了此文件夹的权限。
Sierra 似乎更改了 Jenkis 文件夹的权限。所以最好的解决办法是:
1.给org.jenkins-ci.plist:
添加执行权限
sudo chmod +x /Library/LaunchDaemons/org.jenkins-ci.plist
2. 将 jenkins 设置为 /var/log/jenkins:
的所有者
sudo chown jenkins /var/log/jenkins
3. 启动詹金斯:
sudo launchctl load /Library/LaunchDaemons/org.jenkins-ci.plist
我遇到了同样的问题。
我手动启用了对
的读写访问
/Users/Shared/Jenkins
文件夹。
当我升级到 Sierra 时,这发生在我身上,我设法用 @mac.slusarek 的答案解决了它。但是最近又发生了。这次我允许对 OS 进行小幅更新,并且我也一直在尝试使用 SDK Man 来切换 JDK。不确定哪个破坏了我的 Jenkins,但这次不是权限问题。
我从日志中注意到 Jenkins 在 Java 9-ea, which is apparently not supported yet. I had installed Jenkins using the Jenkins installer for Mac 上尝试 运行,因此尝试卸载:
/Library/Application\ Support/Jenkins/Uninstall.command
并再次安装,但问题并没有消失。
然后我找到了this article suggesting to instead install it using Homebrew。就像 运行ning:
一样简单
$brew install jenkins
因为我只是 运行 在本地进行开发,所以我不需要将其作为守护进程启动,所以现在我只需 运行 输入
$jenkins
问题已解决。我希望这对其他人有帮助。
当我从 Sierra 升级到 High Sierra 时,同样的事情发生在我身上。我按照 mac.slusarek 上面概述的说明进行操作,但是我的计算机上不再存在 jenkins ID。我以标准用户身份创建了 jenkins id。
此外,/Users/Shared/Jenkins 下的文件不再归 jenkins 所有。在我使用以下命令排除错误日志后:
sudo cat /var/log/jenkins/jenkins.log
看到错误后:
Exception in thread "main" java.io.IOException: Jenkins has failed to create a
temporary file in /Users/Shared/Jenkins/tmp
at Main.extractFromJar(Main.java:368)
at Main._main(Main.java:210)
at Main.main(Main.java:112)
Caused by: java.io.IOException: Permission denied
at java.io.UnixFileSystem.createFileExclusively(Native Method)
at java.io.File.createTempFile(File.java:2024)
at Main.extractFromJar(Main.java:365)
... 2 more
我使用以下命令修复了所有权:
sudo chown -R jenkins /Users/Shared/Jenkins
我通过设置适当的 JAVA_HOME
变量修复了它。我诊断它的方法是查看詹金斯试图 运行:
时抛出的错误
tail -f /var/log/jenkins/jenkins.log
然后我尝试运行它:
sudo launchctl load -w /Library/LaunchDaemons/org.jenkins-ci.plist
如果提示已加载,请先卸载:
sudo launchctl unload /Library/LaunchDaemons/org.jenkins-ci.plist
然后运行它:
sudo launchctl load -w /Library/LaunchDaemons/org.jenkins-ci.plist
我看到的错误是Jenkins需要Java8,而不是Java10。所以我卸载了:
sudo launchctl unload /Library/LaunchDaemons/org.jenkins-ci.plist
然后安装Java 8.然后我编辑了plist
文件:
sudo nano /Library/LaunchDaemons/org.jenkins-ci.plist
并添加了适当的 JAVA_HOME
环境变量:
<dict>
<key>JENKINS_HOME</key>
<string>/Users/Shared/Jenkins/Home</string>
<key>JAVA_HOME</key>
<string>/Library/Java/JavaVirtualMachines/jdk1.8.0_161.jdk/Contents/Home</string>
</dict>
最后,我再次尝试了 launchctl
命令:
sudo launchctl load -w /Library/LaunchDaemons/org.jenkins-ci.plist
瞧!
就我而言,在 Catalina (OSX 10.15) 上的安装不知何故甚至没有创建 /var/log/jenkins
文件。我不得不
sudo mkdir /var/log/jenkins
然后取得所有权,然后 Jenkins 正常启动。只是做了正常的 OSX 安装程序,所以不确定安装为什么会损坏。
我在 MacOs(Mojave 版本)上加载 jenkins-cli.plist 命令时遇到问题。
Mac 版本:Mojave 10.14.6
詹金斯版本:2.190.1
我使用 .pkg 文件安装了 jenkins。
参考link:https://java2blog.com/install-jenkins-mac-os-x/
执行以下命令时,
sudo launchctl load /Library/LaunchDaemons/org.jenkins-ci.plist
我在说 "already loaded" 时遇到错误。
解决方案:
第 1 步。检查 jenkins 日志中的确切错误。
tail -f /var/log/jenkins/jenkins.log
(在我的例子中,这是端口绑定问题,端口 8080 已被其他应用程序使用)
第 2 步。所以我决定在其他端口(例如 7070)上启动 jenkins。您可以使用以下命令执行此操作。
sudo 默认写入 /Library/Preferences/org.jenkins-ci.plist httpPort 7070
sudo launchctl 卸载 /Library/LaunchDaemons/org.jenkins-ci.plist
sudo launchctl load /Library/LaunchDaemons/org.jenkins-ci.plist
第 3 步。尝试在浏览器中访问它,http://localhost:7070。应该有用!!
将我的 macOS 升级到 Sierra 后,当我使用 launchctl load 启动 Jenkins 时,我无法连接到 localhost:8080。如果我再次调用 launchctl load,我会看到响应 "service already loaded"。默认位置 /var/log/jenkins/ 没有日志文件(在 jenkins-ci.plist 中设置)。我还尝试在那里创建 jenkins.log 并向 jenkins 用户发送 chown,但仍然没有打印任何内容。
如果我尝试使用 java -jar jenkins.war 启动 Jenkins,我可以连接到本地主机,但 Jenkins 作为新安装运行。
我安装了最新的 JRE 1.8。0_102。
如何诊断问题?
正如我在问题中提到的,我安装了 JRE。我安装后JDK,Jenkins可以正常启动
我遇到了同样的问题,安装 JDK 没有成功
但是更改日志目录的权限(在我的例子中 /var/log/jenkins)并重新启动 Jenkins 工作。
似乎移动到 Sierra 更改了此文件夹的权限。
Sierra 似乎更改了 Jenkis 文件夹的权限。所以最好的解决办法是:
1.给org.jenkins-ci.plist:
添加执行权限
sudo chmod +x /Library/LaunchDaemons/org.jenkins-ci.plist
2. 将 jenkins 设置为 /var/log/jenkins:
的所有者
sudo chown jenkins /var/log/jenkins
3. 启动詹金斯:
sudo launchctl load /Library/LaunchDaemons/org.jenkins-ci.plist
我遇到了同样的问题。
我手动启用了对
的读写访问/Users/Shared/Jenkins
文件夹。
当我升级到 Sierra 时,这发生在我身上,我设法用 @mac.slusarek 的答案解决了它。但是最近又发生了。这次我允许对 OS 进行小幅更新,并且我也一直在尝试使用 SDK Man 来切换 JDK。不确定哪个破坏了我的 Jenkins,但这次不是权限问题。
我从日志中注意到 Jenkins 在 Java 9-ea, which is apparently not supported yet. I had installed Jenkins using the Jenkins installer for Mac 上尝试 运行,因此尝试卸载:
/Library/Application\ Support/Jenkins/Uninstall.command
并再次安装,但问题并没有消失。
然后我找到了this article suggesting to instead install it using Homebrew。就像 运行ning:
一样简单$brew install jenkins
因为我只是 运行 在本地进行开发,所以我不需要将其作为守护进程启动,所以现在我只需 运行 输入
$jenkins
问题已解决。我希望这对其他人有帮助。
当我从 Sierra 升级到 High Sierra 时,同样的事情发生在我身上。我按照 mac.slusarek 上面概述的说明进行操作,但是我的计算机上不再存在 jenkins ID。我以标准用户身份创建了 jenkins id。 此外,/Users/Shared/Jenkins 下的文件不再归 jenkins 所有。在我使用以下命令排除错误日志后:
sudo cat /var/log/jenkins/jenkins.log
看到错误后:
Exception in thread "main" java.io.IOException: Jenkins has failed to create a
temporary file in /Users/Shared/Jenkins/tmp
at Main.extractFromJar(Main.java:368)
at Main._main(Main.java:210)
at Main.main(Main.java:112)
Caused by: java.io.IOException: Permission denied
at java.io.UnixFileSystem.createFileExclusively(Native Method)
at java.io.File.createTempFile(File.java:2024)
at Main.extractFromJar(Main.java:365)
... 2 more
我使用以下命令修复了所有权:
sudo chown -R jenkins /Users/Shared/Jenkins
我通过设置适当的 JAVA_HOME
变量修复了它。我诊断它的方法是查看詹金斯试图 运行:
tail -f /var/log/jenkins/jenkins.log
然后我尝试运行它:
sudo launchctl load -w /Library/LaunchDaemons/org.jenkins-ci.plist
如果提示已加载,请先卸载:
sudo launchctl unload /Library/LaunchDaemons/org.jenkins-ci.plist
然后运行它:
sudo launchctl load -w /Library/LaunchDaemons/org.jenkins-ci.plist
我看到的错误是Jenkins需要Java8,而不是Java10。所以我卸载了:
sudo launchctl unload /Library/LaunchDaemons/org.jenkins-ci.plist
然后安装Java 8.然后我编辑了plist
文件:
sudo nano /Library/LaunchDaemons/org.jenkins-ci.plist
并添加了适当的 JAVA_HOME
环境变量:
<dict>
<key>JENKINS_HOME</key>
<string>/Users/Shared/Jenkins/Home</string>
<key>JAVA_HOME</key>
<string>/Library/Java/JavaVirtualMachines/jdk1.8.0_161.jdk/Contents/Home</string>
</dict>
最后,我再次尝试了 launchctl
命令:
sudo launchctl load -w /Library/LaunchDaemons/org.jenkins-ci.plist
瞧!
就我而言,在 Catalina (OSX 10.15) 上的安装不知何故甚至没有创建 /var/log/jenkins
文件。我不得不
sudo mkdir /var/log/jenkins
然后取得所有权,然后 Jenkins 正常启动。只是做了正常的 OSX 安装程序,所以不确定安装为什么会损坏。
我在 MacOs(Mojave 版本)上加载 jenkins-cli.plist 命令时遇到问题。
Mac 版本:Mojave 10.14.6 詹金斯版本:2.190.1
我使用 .pkg 文件安装了 jenkins。
参考link:https://java2blog.com/install-jenkins-mac-os-x/
执行以下命令时,
sudo launchctl load /Library/LaunchDaemons/org.jenkins-ci.plist
我在说 "already loaded" 时遇到错误。
解决方案:
第 1 步。检查 jenkins 日志中的确切错误。
tail -f /var/log/jenkins/jenkins.log
(在我的例子中,这是端口绑定问题,端口 8080 已被其他应用程序使用)
第 2 步。所以我决定在其他端口(例如 7070)上启动 jenkins。您可以使用以下命令执行此操作。
sudo 默认写入 /Library/Preferences/org.jenkins-ci.plist httpPort 7070
sudo launchctl 卸载 /Library/LaunchDaemons/org.jenkins-ci.plist sudo launchctl load /Library/LaunchDaemons/org.jenkins-ci.plist
第 3 步。尝试在浏览器中访问它,http://localhost:7070。应该有用!!