java生成jar包时使第三方jar_Eclipse环境下 java如何调第三方jar包或自己封装好的工具类...

其实这不能算一个好大的问题,有的人会说如果要用该工具类的时候,可以直接用源代码即可,嗯,诚然这是对的,但是如果我们想要把类封装起来,然后直接调用呢,这个该怎么做,下面将给你一一解答该问题。

注:在把类生成jar文件的过程中发现一个问题,存放类文件的包不能是Eclipse默认的包,必须要自己创建一个包,不然后面就无法导入该类。

1.首先建立一个java项目,如javatest(注意这里不能使用默认的包,必须要重新创建一个包,我也不知道为什么,求他人解答),创建一个包test。

2.在test包下新建一个类,根据需要编写代码。

3.生成javadoc,右击你需要的java文件,选择Export ——>Java——> javadoc,然后根据你实际需要生成帮助文档。

4.生成jar包,右击你要需要的java文件,选择Export ——>Java——> JAR file,选择好输出路径,一路Next即可,因为该类没有main函数,所以不需要选择程序入口点。

5.导入jar包,调用工具类。

5.1. 首先在项目下创建一个文件夹(lib),用于存放要被调用的jar包.

5.2 . 右击项目名,选择Build Path ——> Configure Build Path,然后在Libraries标签下选择Add External JARs,选择你要添加的jar包

5.3. 此时在你的项目中就可以使用该工具类了,当使用该类时,Eclipse会提示导入该类

注意:在生成该工具jar包的时候,java文件一定不能存放在项目默认的包里,不然在另一个项目中就无法使用该工具类了。

--------------------------------------------------------------------------------------------------------------------------------------------------

今天又发现了另外一种方法可以对自己封装类的使用(注:这里的类为.class文件,如果知道了源码,就不用这么麻烦了)。

当我们用eclipse建立工程时,在工程目录中有一个.classpath文件,我们具体就在这个文件中进行操作,打开这个文件我们可以看到如下标签:

具体标签的含义如下:

指定源文件位置,path为源文件存放的路径

指定运行的系统环境

指定编译以后class文件的默认输出路径

如果我们要用其他的类文件(你应该已经知道该类文件中的方法了),可以通过在包中导入该class文件,(前提该类的权限和所有方法均为public权限),其具体步骤如下:

1.先在该工程路径的src文件夹下创建一个文件夹(也就是包名)如my_help,将类文件拷贝进该文件夹,注意这里也要将文件在工程目录下的bin文件夹中拷贝一份,因为eclipse运行时会自动去寻找bin目录下的calss文件,要是不在bin路径下拷贝该类文件,则会提示找不到类.

2.打开.classpath文件,为其添加一个标签如下

kind="lib"表示为库文件或目录,注意此处的路径并不包含my_help,而是只到了src

3.然后在程序中就可以通过 import my_help.*进行类的使用了。

注意在my_help文件夹中放入了类文件后,在bin的根目录下也要放入类该类文件,注意必须是bin的根目录,因为eclipse运行时会自动去寻找该类文件

cdx    2014.5.7    9:27  修改。

--------------------------------------------------------------------------------------------------------------------------------------------------

第三次改动

通过不断的测试终于知道该如何调用第三方jar包,也就是直接调用他人写好的类文件,这里解释第一种方法中出现的问题,就是生成jar包时类文件不能放在eclipse的默认包下(默认包其实就是不命名包的名称),这里不是不能放在默认包下生成jar文件,而是当放在默认包名下生成jar文件时,则调用该包的java文件也要放在默认的包下。而如果jar文件的生成满足第一种方法的条件(也就是指定一个包生成jar文件),则在调用该jar文件时,对调用该包的java文件的位置则没有要求,直接通过import 引入该jar文件即可。

上段话简单总结就是:在默认包名下生成jar文件,则调用jar文件的java文件也要放在默认包名下。在指定包生成的jar文件,则对调用jar文件的java文件位置则没有要求。

原因:因为包是对.class文件的一种封装形式,如果在默认包名下打包的jar文件,可以从jar文件中看出.class文件就在根目录下,在进行引用的时候,就无法指定包名了,因为根本就没有包名,所以如果要调用此种jar包,则将java文件也放在默认包名下,就可以直接使用,而无须进行import操作。

而在指定包名下打包的jar文件,在jar文件中可以看出其.class文件就在和包名同名的文件夹下,这时要调用该jar文件就可以通过import操作,引入jar包,形式为import XXX.YY。

也可以这样理解在默认包名下生成的jar文件,根本就没有包,所以在一个指定包名下要引用jar中的.class文件也就无法使用import,因为import为导入包中类的操作,你没有包怎么导入呢?

cdx   2014.5.7   17:13

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值