当前位置: 代码迷 >> J2SE >> 关于jar包的运用,求指教
  详细解决方案

关于jar包的运用,求指教

热度:3413   发布时间:2013-02-25 00:00:00.0
关于jar包的使用,求指教
我在一《Java开发实战经典》中看到的关于jar的使用。就是先用jar命令打包,然后在使用的问题,我的做法如下:
写了一个hello.java文件:
Java code
package mypackage;public class Hello{public String getInfo(){return "Hello World!!";}};

然后编译命令是:
javac -d . hello.java
然后压缩打包:
jar -cvf mypackage.jar mypackage
再把生成的包删掉,只保留jar文件
然后写了个Main.java 文件
Java code
import mypackage.Hello;public class Main{public static void main(String args[]){    Hello hello = new Hello();    System.out.println(hello.getInfo());}};

然后编译运行Main文件但是总出错:
Exception in thread "main" java.lang.NoClassDefFoundError: mypackage/Hello
  at Main.main(Main.java:4)
Caused by: java.lang.ClassNotFoundException: mypackage.Hello
  at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
  at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
  at java.security.AccessController.doPrivileged(Native Method)
  at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
  at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
  at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
  at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
  ... 1 more


------解决方案--------------------------------------------------------
在项目中建立lib目录,把这个jar文件拷到lib目录里面,有必要时需要鼠标右键你的项目 -> Properties -> Java Build Path -> Libraries,在这里添加jar文件所在路径
------解决方案--------------------------------------------------------
-cp 指定classpath目录或者jar包
  相关解决方案