![](/img/trans.png)
[英]Deploying/including .dll (JACOB) in maven dynamic web project (deployed on jetty)
[英]Deploying a Maven web project on Jetty
當我嘗試在 Jetty 上運行我的項目時,我得到了這個異常:
java.lang.ClassNotFoundException:默認
完整的堆棧:
Launching Jetty with port 8080, context / and webapp path src/main/webapp
2011-07-19 16:49:56.832:INFO::Logging to STDERR via org.mortbay.log.StdErrLog
2011-07-19 16:49:56.841:INFO::jetty-6.1.26
2011-07-19 16:49:57.181:WARN::EXCEPTION
java.lang.ClassNotFoundException: Default
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at org.mortbay.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:401)
at org.mortbay.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:363)
at org.mortbay.util.Loader.loadClass(Loader.java:91)
at org.mortbay.util.Loader.loadClass(Loader.java:71)
at org.mortbay.jetty.servlet.Holder.doStart(Holder.java:73)
at org.mortbay.jetty.servlet.ServletHolder.doStart(ServletHolder.java:242)
at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
at org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:736)
at org.mortbay.jetty.servlet.Context.startContext(Context.java:140)
at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1282)
at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:518)
at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:499)
at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)
at org.mortbay.jetty.Server.doStart(Server.java:224)
at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
at net.sourceforge.eclipsejetty.launch.JettyLauncherMain.launch(JettyLauncherMain.java:67)
at net.sourceforge.eclipsejetty.launch.JettyLauncherMain.main(JettyLauncherMain.java:50)
2011-07-19 16:49:57.184:INFO:/:Unavailable javax.servlet.UnavailableException: Default
2011-07-19 16:49:57.185:WARN::failed Default: java.lang.NullPointerException
2011-07-19 16:49:57.283:WARN::Failed startup of context org.mortbay.jetty.webapp.WebAppContext@5f1eb199{/,src/main/webapp}
java.lang.NullPointerException
at java.lang.Class.isAssignableFrom(Native Method)
at org.mortbay.jetty.servlet.ServletHolder.doStart(ServletHolder.java:256)
at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
at org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:736)
at org.mortbay.jetty.servlet.Context.startContext(Context.java:140)
at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1282)
at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:518)
at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:499)
at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)
at org.mortbay.jetty.Server.doStart(Server.java:224)
at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
at net.sourceforge.eclipsejetty.launch.JettyLauncherMain.launch(JettyLauncherMain.java:67)
at net.sourceforge.eclipsejetty.launch.JettyLauncherMain.main(JettyLauncherMain.java:50)
2011-07-19 16:49:57.294:INFO::Started SocketConnector@0.0.0.0:8080
我說它無法加載我的 class Default.java(我的項目中唯一的 class)。
這是我的結構(更新) :
我使用 Jetty 插件部署我的項目。 要運行它,我右鍵單擊我的項目和 select Debug As-> Debug Configurations... 和我 select 下面設置的一個:
這也是我的 web.xml 文件:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web- app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
<display-name>ServletWeb-Test</display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
<servlet>
<description></description>
<display-name>Default</display-name>
<servlet-name>Default</servlet-name>
<servlet-class>Default</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Default</servlet-name>
<url-pattern>/Default</url-pattern>
</servlet-mapping>
我已經沒有想法了,我找不到為什么會出現這個錯誤。 我有人可以幫助我,我將很高興!
您想將 Java class 文件放在 src/main/java 中,而不是 src/main/resources 中。 資源中的文件不會被編譯,因為它們不應該是源代碼。 通常,您會將 xml 描述符文件、圖像文件等放在資源中。
當 eclipse/maven 構建您的項目時,src/main/resources 的內容將被復制到您的目標文件夾中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.