[乐意黎原创] java里classpath在引入编译文件路径时加星号(*)引起的错误
分类:Java
一不小心,在引入编译java文件路径下加了个星号(*), 如下图:
启动后,页面在抛:
并且后台日志在抛:
E-C-*-A0FF0001-run_jsp._jspService [Thread-50][FATAL][10:06:39,244]com.jinfonet.web.WRException: NullPointerException at run_jsp.java:134at org.apache.jsp.run_jsp._jspService(run_jsp.java:151)at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:92)at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:162)at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:240)at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:187)at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)at server.servlet.http.HttpServerHandler.service(HttpServerHandler.java:84)at server.servlet.http.HttpServerHandlerBase.handleConnection(HttpServerHandlerBase.java:97)at server.servlet.http.HttpServerHandlerBase.run(HttpServerHandlerBase.java:46)at java.lang.Thread.run(Thread.java:722)Caused by: java.lang.NullPointerExceptionat org.apache.jsp.run_jsp._jspService(run_jsp.java:134)… 10 more
为这个问题一直困扰了好几天,什么方法都试过了,包括重搭Debug环境等等,,修改Java 的版本,一直没有找到方法。
实在没撤,请同事来帮助检查,最后终于愉快的把工作环境弄出来了.
究其原因:原来是我 在 set CLASSPATH=引入编译文件路径的时候一不小心,错误加了入 *号。见图:
只要把 星号(*) 去了,一切都OK啦。
修改方式如下:
把E:\Ria-Workspace\Refactoring131029\bin\* 改成E:\Ria-Workspace\Refactoring131029\bin\ 就可以啦.
错误总是在不经意间引入,并且总是不会怀疑问题会在最容易忽略的地方。
终于大功告成,Mark 一下,希望对自己和大家有所帮助。
其它常识:
java classpath 和 classpath引入和不引入星号(*) 区别:classpath 不引入星号:如:D:\abc\ 只会到你的class路径中查找找文件;classpath 引入星号*: 如:D:\abc\* 不仅包含class路径,还包括jar文件中(class路径)进行查找.
乐意黎作者原创,严禁转载。本文地址:
版权声明:本文为博主原创文章,未经博主允许不得转载。
上一篇UNIX主机访问PHP程序提示“Internal Server Error”的处理办法下一篇java classpath里带星号*和不带星号的区别
顶0踩0
友谊之花、爱情之树、以及遗憾之泪!