jar包和classes的区别??(jar包可用,class不可用)
有个jar包在WEB-INF\lib下,运行正常,
我把jar包的class文件释放到WEB-INF\classes,并把这个jar包删除,就报如下错误,数据不能正常显示
不知道是那里错误。
路径和文件都是正确的
StandardWrapperValve[jsp]: Servlet.service() for servlet jsp threw exception
java.lang.NoClassDefFoundError: com/isomorphic/sql/SQLDriver
at org.apache.jsp.examples.server_005fintegration.custom_005fdatasource_
005foperations.supplyItemOperations_jsp._jspService(supplyItemOperations_jsp.jav
a:113)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper
.java:324)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:2
92)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:237)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:157)
at com.isomorphic.js.JSSyntaxScannerFilter.doFilter(JSSyntaxScannerFilte
r.java:251)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:186)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:157)
at com.isomorphic.servlet.CompressionFilter.doFilter(CompressionFilter.j
ava:248)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:186)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:157)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
alve.java:214)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
eContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:520)
at org.apache.catalina.core.StandardContextValve.invokeInternal(Standard
ContextValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:152)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
eContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:520)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:137)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
eContext.java:104)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
ava:117)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
eContext.java:102)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:520)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:109)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
eContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:520)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:16
0)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
:799)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.proce
ssConnection(Http11Protocol.java:705)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java
:577)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadP
ool.java:683)
at java.lang.Thread.run(Thread.java:595)
[解决办法]
com/isomorphic/sql/SQLDriver
这个类在哪里 是class文件还是jar包
[解决办法]
可能是发布的时候重新编译的时候把你释放的class文件删除了。
你要确定在应用运行的时候你的class存在,并且要保证包名的正确,比如你要在WEB-INF/classes下建立com/isomorphic/sql目录,并且要把SQLDriver.class放到这个目录下。
[解决办法]
想问下,包和类的区别。
[解决办法]
就象一箱苹果与一个苹果的区别.
[解决办法]
就象一箱苹果与一个苹果的区别
楼主你之所以出不来,肯定和释放后的包名有关系
[解决办法]
SQLDriver.class 在jar包里
目录结构:
WEB-INF\lib\isomorphic_sql.jar(包含了com/isomorphic/sql的所有sql的类)
\isomorphic_examples.jar(这个jar包,被我用rar释放到WEB-INF\classes)
================
释放到WEB-INF\classes\com下
[解决办法]
你解开之后路径就变了,当然就报出上面的错误了。