0

HtmlUnit テスト ケースを実行するための Maven プロファイルのセットアップに問題があります。プロファイルは、Maven Cargo プラグインを使用してアプリケーションをデプロイし、その後、デプロイされたアプリケーションで HtmlUnit を使用してインターフェイス テストを実行します。

私のローカル マシンでは、この Maven プロファイルを毎回確実にクリーンに実行できますが、Hudson (ver. 1.386) を実行している継続的インテグレーション サーバーでは、デプロイできるかどうかに関係なく、このプロファイルはヒットまたはミスします。Tomcat ログに次のエラーが表示されます。

SEVERE: クラス org.apache.myfaces.webapp.StartupServletContextListener java.lang.NoClassDefFoundError のアプリケーション リスナーの構成エラー: org.apache.myfaces.webapp.AbstractMyFacesListener.(AbstractMyFacesListener.java:36) の org/apache/commons/logging/LogFactory sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) で sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) で sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) で java.lang.reflect.Constructor .newInstance(Constructor.java:513) at java.lang.Class.newInstance0(Class.java:355) at java.lang.Class.newInstance(Class.java:308) at org.apache.catalina.core.StandardContext. org.apache の listenerStart(StandardContext.java:4079)。org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) の catalina.core.StandardContext.start(StandardContext.java:4630) org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java: 771) org.apache.catalina.core.StandardHost.addChild(StandardHost.java:546) で org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1041) で org.apache.catalina.startup.HostConfig .deployDirectories(HostConfig.java:964) org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:502) org.apache.catalina.startup.HostConfig.check(HostConfig.java:1345) org. org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119) の org.apache.catalina.core の apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:303)。org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1601) の ContainerBase.backgroundProcess(ContainerBase.java:1337) org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java: 1610) org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1590) で java.lang.Thread.run(Thread.java:662) で 原因: java.lang.ClassNotFoundException: org.apache .commons.logging.LogFactory at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1645) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1491) ... 23 詳細org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1610) の ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1601) org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase. java:1590) で java.lang.Thread.run(Thread.java:662) 原因: java.lang.ClassNotFoundException: org.apache.commons.logging.LogFactory で org.apache.catalina.loader.WebappClassLoader.loadClass( WebappClassLoader.java:1645) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1491) ... 23 詳細org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1610) の ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1601) org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase. java:1590) で java.lang.Thread.run(Thread.java:662) 原因: java.lang.ClassNotFoundException: org.apache.commons.logging.LogFactory で org.apache.catalina.loader.WebappClassLoader.loadClass( WebappClassLoader.java:1645) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1491) ... 23 詳細ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1590) at java.lang.Thread.run(Thread.java:662) 原因: java.lang.ClassNotFoundException: org.apache.commons.logging.LogFactory at org.apache. catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1645) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1491) ... 23 詳細ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1590) at java.lang.Thread.run(Thread.java:662) 原因: java.lang.ClassNotFoundException: org.apache.commons.logging.LogFactory at org.apache. catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1645) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1491) ... 23 詳細

この問題は、発生する可能性があるか、コードに変更がなければ発生しない可能性があり、まったく同じコードがローカル マシンで完全に実行されるという事実から、当惑しています。問題/エラーは、純粋に Cargo プラグイン内の展開の一部ですが、発生する明確な理由はありません。考え、アドバイス、または解決策は、私にとって大いに役立ちます。

詳細:

ローカル マシン (実行): Windows 7 64 ビット、Maven 2.2.1、Tomcat 6.0.32

CIS サーバー (失敗): Windows 2008 サーバー 64 ビット、Maven 2.2.1、Tomcat 6.0.32、Hudson 1.386。

Maven コマンド & ゴール: "mvn clover2:instrument clover2:clover site -P integration" (統合は Maven プロファイルです)

4

1 に答える 1

0

http://commons.apache.org/logging/troubleshooting.htmlの最後のセクションをご覧になりましたか?

于 2011-04-20T16:54:24.190 に答える