J'ai téléchargé le package natif pour Mac OS X à partir de Jenkins site Web , l’a installé, ouvrez mon navigateur à http: // localhost: 8080/ et vous obtenez une page d’erreur contenant ce texte:
Status Code: 404
Exception: Request URL / not found.<br><br>
Stacktrace:
Generated by Winstone Servlet Engine v0.9.10 at Tue Nov 29 12:00:52 CET 2011
J'ai trouvé jenkins.war
dans /Applications/Jenkins
et j'ai essayé de l'exécuter avec Java -jar jenkins.war
:
$ pwd
/Applications/Jenkins
$ ls
jenkins.war
$ Java -jar jenkins.war
Running from: /Applications/Jenkins/jenkins.war
webroot: $user.home/.jenkins
[Winstone 2011/11/29 12:03:12] - Beginning extraction from war file
Jenkins home directory: /Users/zeljko/.jenkins found at: $user.home/.jenkins
[Winstone 2011/11/29 12:03:16] - Winstone shutdown successfully
[Winstone 2011/11/29 12:03:16] - Container startup failed
Java.io.IOException: Failed to start a listener: winstone.HttpListener
at winstone.Launcher.spawnListener(Launcher.Java:250)
at winstone.Launcher.<init>(Launcher.Java:202)
at winstone.Launcher.main(Launcher.Java:398)
at Sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at Sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.Java:39)
at Sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.Java:25)
at Java.lang.reflect.Method.invoke(Method.Java:597)
at Main._main(Main.Java:268)
at Main.main(Main.Java:96)
Caused by: Java.io.IOException: Failed to listen on port 8080
at winstone.HttpListener.getServerSocket(HttpListener.Java:117)
at winstone.HttpListener.start(HttpListener.Java:70)
at winstone.Launcher.spawnListener(Launcher.Java:241)
... 8 more
Caused by: Java.net.BindException: Address already in use
at Java.net.PlainSocketImpl.socketBind(Native Method)
at Java.net.PlainSocketImpl.bind(PlainSocketImpl.Java:383)
at Java.net.ServerSocket.bind(ServerSocket.Java:328)
at Java.net.ServerSocket.<init>(ServerSocket.Java:194)
at Java.net.ServerSocket.<init>(ServerSocket.Java:150)
at winstone.HttpListener.getServerSocket(HttpListener.Java:112)
... 10 more
Nov 29, 2011 12:03:16 PM jenkins.model.Jenkins$6 onAttained
INFO: Started initialization
Nov 29, 2011 12:03:16 PM hudson.WebAppMain$2 run
SEVERE: Failed to initialize Jenkins
Java.lang.InterruptedException
at Java.lang.Object.wait(Native Method)
at Java.lang.Object.wait(Object.Java:485)
at org.jvnet.hudson.reactor.Reactor.execute(Reactor.Java:244)
at jenkins.model.Jenkins.executeReactor(Jenkins.Java:816)
at jenkins.model.Jenkins.<init>(Jenkins.Java:730)
at hudson.model.Hudson.<init>(Hudson.Java:81)
at hudson.model.Hudson.<init>(Hudson.Java:77)
at hudson.WebAppMain$2.run(WebAppMain.Java:217)
Puisque le message d'erreur indique Address already in use
, j'ai essayé de l'exécuter sur un autre port:
$ Java -jar jenkins.war --httpPort=8081
Running from: /Applications/Jenkins/jenkins.war
webroot: $user.home/.jenkins
[Winstone 2011/11/29 12:11:26] - Beginning extraction from war file
Jenkins home directory: /Users/zeljko/.jenkins found at: $user.home/.jenkins
[Winstone 2011/11/29 12:11:27] - HTTP Listener started: port=8081
[Winstone 2011/11/29 12:11:27] - Winstone shutdown successfully
[Winstone 2011/11/29 12:11:27] - Container startup failed
Java.io.IOException: Failed to start a listener: winstone.ajp13.Ajp13Listener
at winstone.Launcher.spawnListener(Launcher.Java:250)
at winstone.Launcher.<init>(Launcher.Java:203)
at winstone.Launcher.main(Launcher.Java:398)
at Sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at Sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.Java:39)
at Sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.Java:25)
at Java.lang.reflect.Method.invoke(Method.Java:597)
at Main._main(Main.Java:268)
at Main.main(Main.Java:96)
Caused by: Java.io.IOException: Failed to listen on port 8009
at winstone.ajp13.Ajp13Listener.start(Ajp13Listener.Java:92)
at winstone.Launcher.spawnListener(Launcher.Java:241)
... 8 more
Caused by: Java.net.BindException: Address already in use
at Java.net.PlainSocketImpl.socketBind(Native Method)
at Java.net.PlainSocketImpl.bind(PlainSocketImpl.Java:383)
at Java.net.ServerSocket.bind(ServerSocket.Java:328)
at Java.net.ServerSocket.<init>(ServerSocket.Java:194)
at Java.net.ServerSocket.<init>(ServerSocket.Java:150)
at winstone.ajp13.Ajp13Listener.start(Ajp13Listener.Java:87)
... 9 more
Nov 29, 2011 12:11:27 PM jenkins.model.Jenkins$6 onAttained
INFO: Started initialization
Nov 29, 2011 12:11:27 PM hudson.WebAppMain$2 run
SEVERE: Failed to initialize Jenkins
Java.lang.InterruptedException
at Java.lang.Object.wait(Native Method)
at Java.lang.Object.wait(Object.Java:485)
at org.jvnet.hudson.reactor.Reactor.execute(Reactor.Java:244)
at jenkins.model.Jenkins.executeReactor(Jenkins.Java:816)
at jenkins.model.Jenkins.<init>(Jenkins.Java:730)
at hudson.model.Hudson.<init>(Hudson.Java:81)
at hudson.model.Hudson.<init>(Hudson.Java:77)
at hudson.WebAppMain$2.run(WebAppMain.Java:217)
Mais j’obtiens un message d’erreur Address already in use
, peu importe le port que j’essaie.
J'ai arrêté le pare-feu, juste au cas où (Préférences Système> Sécurité> Pare-feu> Arrêter). Cela n'a pas aidé.
J'ai copié jenkins.war
dans /Users/zeljko/Jenkins
et essayé de l'exécuter avec Java -jar jenkins.war
et Java -jar jenkins.war --httpPort=8081
. Les mêmes messages d'erreur.
J'ai téléchargé Dernières et meilleures (1.441) jenkins.war depuis le site Web, je les ai déplacées vers /Users/zeljko/Jenkins
et j'ai essayé Java -jar jenkins.war
et Java -jar jenkins.war --httpPort=8081
. Les mêmes messages d'erreur.
Environnement:
Mac OS X 10.6.8
$ Java -version
Java version "1.6.0_29"
Java(TM) SE Runtime Environment (build 1.6.0_29-b11-402-10M3527)
Java HotSpot(TM) 64-Bit Server VM (build 20.4-b02-402, mixed mode)
Je suis en train de naviguer sur Jenkins site Web , wiki , livre , mais je ne comprends tout simplement pas ce que je dois faire pour le faire fonctionner.
Le problème semble avoir été ajouté à la Jira de Jenkins et, espérons-le, corrigé bientôt: https://issues.jenkins-ci.org/browse/JENKINS-11714?page=com.atlassian.jira.plugin.system .issuetabpanels: tout-tabpanel
Sur mon installation 10.7.2, je l'ai fait fonctionner en créant le dossier Accueil manquant et en changeant le propriétaire du Jenkins.
Après avoir installé Jenkins, exécutez les commandes suivantes:
Sudo launchctl unload /Library/LaunchDaemons/org.jenkins-ci.plist
Sudo mkdir -p /Users/Shared/Jenkins/Home
Sudo chown -R daemon /Users/Shared/Jenkins
Sudo launchctl load /Library/LaunchDaemons/org.jenkins-ci.plist
Cela a résolu le problème:
Sudo launchctl unload /Library/LaunchDaemons/org.jenkins-ci.plist
Après cela, je pourrais exécuter Java -jar jenkins.war
à /Users/zeljko/Jenkins
.
ajp essaie d'écouter sur 8009. On dirait que Tomcat est en cours d'exécution (par conséquent, 8080 et 8009 sont déjà occupés). Désactivez ajp lorsque vous démarrez Jenkins.
Commencer avec:
Java -jar jenkins.war --httpPort=8081 --ajp13Port=-1
On dirait que l’erreur a été d’installer le package natif de Mac OS X. J'ai essayé d'exécuter Java -jar jenkins.war
sur une machine sur laquelle je viens de télécharger jenkins.war
, et cela fonctionne bien. Maintenant, pour savoir comment faire fonctionner le paquet natif ou le désinstaller ...
Ceci est principalement dû au fait que le port 8080 est utilisé par un autre processus (dans la plupart des cas, il s'agit d'un processus Java Tomcat). Donc, au début, vous devriez exécuter:
lsof -i:8080
Tuez ensuite le processus qui utilise le port 8080.
Après cela, exécutez à nouveau votre commande.
Java -jar jenkins.war --httpPort=8081