Проблема в том, что раб Дженкинс пытается запустить какой-то пользовательский интерфейс, но это, конечно, запрещено. Я обнаружил ту же ошибку, которая связана с официальным сообщением об ошибке: https://issues.jenkins-ci.org/browse/JENKINS-15697
В этом случае решение заключается в добавлении -Djava.awt.headless=true
к параметрам JVM, что приводит к следующей конфигурации LaunchDaemon.
<?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>com.example.ci</string> <key>ProgramArguments</key> <array> <string>sudo</string> <string>/usr/bin/java</string> <string>-Djava.awt.headless=true</string> <string>-jar</string> <string>/Developer/jenkins/slave.jar</string> <string>-jnlpUrl</string> <string>http://ci.****/computer/****/slave-agent.jnlp</string> <string>-jnlpCredentials</string> <string>user:apitoken</string> </array> <key>KeepAlive</key> <true/> <key>StandardOutPath</key> <string>/Developer/jenkins/stdout.log</string> <key>StandardErrorPath</key> <string>/Developer/jenkins/error.log</string> </dict> </plist>
Я проверил это, и это работает.