Ich bin ein Neuling für Jenkins. Ich möchte Jenkins dazu bringen, meine Bestien zu überwachen. Ich bin nach dem offiziellen Tutorial: https://wiki.jenkins-ci.org/display/JENKINS/Monitoring+external+jobsJenkins External-Monitor-Job-Setup
Jenkins auf AWS Ubuntu läuft 14. Die Installation war in Ordnung und ich kann Jenkins Zugriff auf 9091. http://www.example.com:9091/
externen Monitor Job Plugin wurde standardmäßig installiert. Es kann im Plugin Manager gefunden werden.
Was ich bisher gemacht habe. In Jenkins habe ich einen neuen externen Job namens "backup" erstellt. http://www.example.com:9091/job/backup/ und im Grunde ist das alles da.
In meiner cron-Datei: "/ var/spool/cron/crontabs/root":
[email protected]
JENKINS_HOME=http://www.example.com:9091
* * * * * export JENKINS_HOME=$JENKINS_HOME; java -jar /usr/share/jenkins/jenkins-core-2.7.1.jar "backup" backup.sh 2>&1 > /dev/null
Aufgrund der mailto
Einstellungen anfangs war ich no jenkins-core-*.jar found error
erhalten. Ich fing an, nach jenkins-core-*.jar
zu suchen, aber ich fand keinen. In meinem Ordner "/ usr/share/jenkins" war nur die Datei jenkins.war
. Ich entpackte die WAR-Datei und kopiert die folgenden Dateien in die jeweiligen Ordner:
jenkins-core-*.jar
remoting-*.jar
ant-1.7.0.jar
commons-io-1.4jar
commons-lang-2.4.jar
jna-posix-*.jar
xstream-*.jar
Nachdem ich das tat begann ich kompliziertere Fehler zu erhalten:
Exception in thread "main" java.lang.NoClassDefFoundError: javax/servlet/ServletContextListener
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:803)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
at hudson.Main.<clinit>(Main.java:222)
Caused by: java.lang.ClassNotFoundException: javax.servlet.ServletContextListener
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
... 13 more
Wie erwartet wird der Feststellung auf der Jenkins Seite . Offensichtlich vermisse ich etwas. Ich versuchte, Zitate um "backup"
zu entfernen und den Befehl backup.sh 2>&1 > /dev/null
mit etwas zu ändern, das sicher bin, arbeitet. Zum Beispiel: cd /my/directory && program myfile.file
aber das ist alles. Ich frage mich, ob ich irgendwo die ganze WAR-Datei entpacken muss oder ob ich anderen Pfad folgen muss? Ich bin mir nicht sicher, was der Fehler bedeutet. Ich habe einen Vorschlag gefunden, dass es mit Tomcat zu tun hat. Bitte für etwas Hilfe mit diesem.
Haben Sie jemals herausgefunden, was dieses Problem ist? – pca2