java包与jar文件

    技术2022-05-11  18

    我们平时编写一些类似于工具的类文件,在以后编写代码的时候经常要用到这些类,于是我们会将一些功能相近的类定义在一个包中(用package关键字),比如这个包名是:bryantd.javatools。这些被称为javatools的工具类在逻辑上被放置在/bryantd/javatools/目录下,相应的物理存储也应该建立一个包含该子目录(/bryantd/javatools/)的目录,比如:d:/src/bryantd/javatools/,这样才能正确地打包。我们将自己定义的工具类编译后生成.class文件。这些class在为别的程序员导入到自己的代码时候,可能将它们安装在了本地机器的其它位置,为了在以后的开发中使用这些类方便,我们可以将它们制作成jar包。jar包可以被安装在硬盘的任何物理位置,只要在CLASSPATH中作出相应的设置即可。注意一个关键问题,我们在制作jar文件的时候要注意路径问题,这个路径一定要和工具类的包名相对应,对于上例,我们应该在d:/src/这个目录下制作jar文件。下面是我自己列举的一个小例子,如果你对制作jar文件还不是很清楚,不妨看一下就会明白:

    1、编写自己的类库,将所有类加上报名package bryantd.javatools比如这个类库中的一个文件是这样的:

    //MyTool.java

    package bryantd.javatools;

    public class MyTool{      public MyTool(){            System.out.println("An object of MyTool class in the package bryantd.javatools");      }}

    这个文件的物理位置为:d:/src/bryantd/javatools/MyTool.java编译该文件:d:/src/bryantd/javatools>javac MyTool.java编译成功,生成MyTool.class。

    3、将这个类库制作成.jar文件d:/src/>jar -cf tool.jar .制作成功,并将这个jar文件放置在e:/lib/目录下,即:e:/lib/tool.jar修改CLASSPATH环境变量,我的系统是XP,直接在CLASSPATH中加入:……; e:/lib/;

    4、在e:/下编写测试类文件:

    //JarTest.java

    import bryantd.javatools.MyTool;

    public class JarTest{      public static void main(String[] args){            MyTool my = new MyTool();      }}

    这个文件的物理位置为:e:/JarTest.java编译该文件:e:/>javac JarTest.java编译成功

    5、执行测试类:e:/>java JarTest

     

    最新回复(0)