2009-06-12 3 views
1

私はCruiseControlの代わりにハドソンを見始めました。私はそれを使って外部の仕事を監視したいと思っています。私はこのページのアドバイスに従うことを試みた:Monitoring External Jobsハドソンでの外部ジョブの監視

私は、このコマンドを実行すると:

java -jar hudson-core-1.309.jar

を、私はこのエラーを取得する:

 
Exception in thread "main" java.lang.NoClassDefFoundError: javax/servlet/http/HttpServletRequest 
     at hudson.EnvVars.initMaster(EnvVars.java:197) 
     at hudson.EnvVars.(EnvVars.java:192) 
     at hudson.Main.getHudsonHome(Main.java:71) 
     at hudson.Main.run(Main.java:61) 
     at hudson.Main.main(Main.java:53) 
Caused by: java.lang.ClassNotFoundException: javax.servlet.http.HttpServletRequest 
+0

したがって、現在のバージョンのHudsonでは壊れています。私は古いバージョン(1.291)に戻って動作させました。しかし、私のHudsonのインストールではログインが必要なので、動作しません。このメッセージhttp://www.nabble.com/Monitoring-external-cron-jobs-td23511569.html#a23511569では、すぐにCLI jarに移動することが示唆されています。 – abendigo

答えて

1

は、実行クラスパスにservlet.jarを追加します。 hudson-core-1.309.jarはWebコンテナで動作するように構築されているため、含まれていません。

+0

私はhudsonスタンドアロン(つまり、 "java -jar hudson.war")を実行しています。 hudson.warの中にservlet.jarはありません。または、少なくとも作成された展開されたwarディレクトリを横に並べることはありません。 – abendigo

+0

右 - 私は、HudsonがHttpServletRequestを見つけるためにクラスパス上でservlet.jarまたは少なくともservlet-api.jarを持つ必要があると考えています。 – stevedbrown

関連する問題