0

我已将 tomcat:catalina:5.5.23 定义为 cargo 插件的依赖项,但是我仍然得到以下异常:

java.lang.ClassNotFoundException: org.apache.catalina.Connector
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:316)
at org.codehaus.classworlds.RealmClassLoader.loadClassDirect(RealmClassLoader.java:195)
at org.codehaus.classworlds.DefaultClassRealm.loadClass(DefaultClassRealm.java:255)
at org.codehaus.classworlds.DefaultClassRealm.loadClass(DefaultClassRealm.java:274)
at org.codehaus.classworlds.RealmClassLoader.loadClass(RealmClassLoader.java:214)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:374)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:247)
at org.codehaus.cargo.container.tomcat.internal.Tomcat5xEmbedded.preloadEmbedded(Tomcat5xEmbedded.java:232)

看起来 RealmClassLoader 没有找到该类,可能是由于 java.security.AccessController.doPrivileged 拒绝访问。

有没有人让tomcat在maven中以嵌入式模式运行?

4

2 回答 2

1

旁注:您可以启动类似于 tomcat 的码头。(Servlet 将在http://localhost:8080/ artefact-name 上可用)

mvn jetty6:run

您必须添加到您的 pom 中:

<project>
    <build>
        <plugins>
            <plugin>
                <groupId>org.mortbay.jetty</groupId>
                <artifactId>maven-jetty6-plugin</artifactId>
                <configuration>
                    <scanIntervalSeconds>5</scanIntervalSeconds>
                    <!--
                    <webXml>${basedir}/WEB-INF/web.xml</webXml>
                    -->
                </configuration>
            </plugin>
         </plugins>
    </build>
</project>
于 2008-10-03T21:47:34.600 回答
0

还有一个 tomcat maven 插件:

http://mojo.codehaus.org/tomcat-maven-plugin/introduction.html

<plugins>
  <plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>tomcat-maven-plugin</artifactId>
  </plugin>
</plugins>

在我的机器上,这会加载 tomcat 6。我不确定如何让它与 tomcat 5.5 一起使用

于 2009-03-12T20:54:40.080 回答