日期:2014-05-20  浏览次数:20685 次

【jar操作问题】不问专家问大家!
开门见山:
一、定义两个类
//class "Vectors" and "Lists" are defined in two separated files(.java)
package baobao;
public class Vectors{
  public Vectors(){
  System.out.println("You create a new type of Vectors");
  }
}

package baobao;
public class Lists{
  public Lists(){
  System.out.println("You create a new type of Lists");
  }
}

二、创建jar文件
D:\java\th\jar cvf using.jar -C baobao/ .
生成using.jar文件 D:\java\th\using.jar (9KB)
【问题1】:怎么设置.jar文件的存放路径,比如想放到D:\java 或D:\java\th\baobao中

三、设置环境变量classpath
.;C:\Sun\SDK\jdk\lib\dt.jar;C:\Sun\SDK\jdk\lib\tools.jar;D:\java\th\using.jar

四、定义一个新类使用import导入并使用Lists和Vectors
import baobao.*;
public class UsingClassesByImport{
  public static void main(String args[]){
  new Lists();
  new Vectors();
  }
}

五、命令行编译UsingClassesByImport
D:\java\th\javac UsingClassesByImport.java
-================
[提示]
UsingClassesByImport.java:14无法访问Lists
错误的类文件:.\Lists.java
文件不包含类 Lists
请删除该文件或确保该文件位于正确的类路径子目录中。
  new Lists();
1错误
-================
【问题2】baobao包并没有成功被装载进using.jar文件,如何处理?
请赐教,不甚感激!


------解决方案--------------------
jar cvf using.jar -C baobao/ . 
生成的路径和package的路径不对

你在D:\java\th\目录下编译了那两个类后不是会生成名为baobao的文件夹么...

在D:\java\th\目录下输入jar cvf using.jar ./baobao

然后会生成using.jar,直接把这个包的路径D:\java\th\using.jar添加到环境变量里就好了