通过jar指令打包一个.class文件并编写测试类使用jar包中的类。特别注意的是java指令中classpath(或者cp)选项导入jar包的时候对CLASSPATH的影响。注意jar包和测试类都在同一个文件夹下
生成Jar包
- 编写jar包中的类文件:
public class Hello
{
public static void printHello()
{
System.out.println("hello jar command");
}
}
- javac编译Hello.java
jar -cvf testhello.jar Hello.class
编写测试类
- TestDemo.java
public class TestDemo
{
public static void main(String[] args)
{
Hello test = new Hello();
test.printHello();
}
}
- 编译:
javac -classpath .:./testhello.jar TestDemo.java
- 运行:
java -classpath .:./testhello.jar TestDemo
- 运行结果:
hello jar command
注意事项
- 在运行测试类的时候,java指令的-classpath选项会影响全局变量CLASSPATH。所以必须要在classpath中添加当前目录“.”,否则java只会在testhello.jar里面寻找.class文件。因此,如果你没有在-classpath中添加当前目录,在使用UNIX系统的补全功能的时候是找不到TestDemo的。