求助java怪问题

camlin 发布于 2010/07/23 11:29
阅读 402
收藏 0

System.out.println(ExecuteAction.class.getResource("/").getPath());

在编辑器里正常运行,

把类打成jar包后在cmd 窗口 用 java 运行的时候 怎么给我个 空指针异常 (环境变量都正确)

class 在JWebAdmin.jar中

 

 

 

 

加载中
0
c
camlin

没人知道吗 为什么把类包进 jar 后 就找不到 Class.class 了呢

0
xiaowenliang
xiaowenliang

应该是和环境有关系吧,也许你main函数里第27行的代码的某些操作,依赖了你的某些环境?只是瞎猜:)

0
xiaowenliang
xiaowenliang

我猜是  ExecuteAction.class.getResource("/") null了

0
Barry Wei
Barry Wei

getResource().getPath()确是会在打包的情况下返回null。

换用getResourceAsStream()可以的。我也没搞清楚过为什么。但是,打包成jar后,getResource().getPath()确是会出问题。

0
xiaowenliang
xiaowenliang

刚刚做了一个小小的验证,写了一个简单的类:

public class Main {

/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

System.out.println(Main.class.getResource("/").getPath());

}

}

然后打成jar包,执行的时候,并不会出现Null异常。所以,可能是因为你的ExcuteAction这个类有问题。由于不知道你的工程结构,也无法重现你的异常。不过,如果可以看一看java的getResource()方法源码,也许会帮助你定位问题。

返回顶部
顶部