java程序打成jar包 如何处理第三方jar包

现在有一j2se程序,依赖于jdk1.5、poi.jar、commons-lang.jar。打成jar包后,依赖于jdk的部分代码是可以执行的。但是依赖于poi.jar、... 现在有一j2se程序,依赖于jdk1.5、poi.jar、commons-lang.jar。
打成jar包后,依赖于jdk的部分代码是可以执行的。但是依赖于poi.jar、commons-lang.jar这两个包的程序没有办法执行。
我知道是因为在classPath中无法找到上述两个包的缘故。但不希望每次都通过设置classpath的方式去运行这个jar程序。
请问通过什么样的打包办法可以让程序不用设置classpath而找到其所依赖的第三方jar包。谢谢javaeyer能予以指导!
展开
 我来答
鱼得水号
2015-09-22 · 聚爱水族生活馆,让你的生活如鱼得水
鱼得水号
采纳数:585 获赞数:3014

向TA提问 私信TA
展开全部
在eclipse中你可以通过方式解决你的问题:
在eclipse的package explorer视图中点击项目工程邮件,选择“导出...”,再找到Java目录下的“Runnable JAR file”点击下一步,这个时候就是关键的地方了。在"Library handling"中有一个选项"Extract required libraries into generated JAR",这句话就是说“解压需要的包到生成的jar文件中去”。勾上这个选项以后,在将java工程打包的时候就会把依赖的jar包打到你的目标jar文件中去。

java的运行依赖java虚拟机以及第三方的很多jar库,在独立运行的时候必须要在classpath中找到这个些类库方能运行。
职场直来直往
2010-03-10 · TA获得超过740个赞
知道小有建树答主
回答量:255
采纳率:100%
帮助的人:237万
展开全部
那就只能把你需要的jar包都一起打到你jar包里面了,但是这样可能到导致jar包比较大。

我不知道你是如何打jar包的,我使用eclipse开发,使用一个叫做fat jar的插件进行打包,打包的时候它会问你你要把那些用到的第三放jar包打到你的jar包里面,这个时候你就可以选择了,我曾经写过一个jar是连接SAP,从SAP把数据读到oracle数据库,所以我的jar包就包括sapjco.jar和classes12.jar,工作的很好。

不推荐用命令行打包,挺麻烦容易出错,老板总是希望你快快干完活而不是自己练手。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
LHLBT3GOOD
2010-03-10 · TA获得超过546个赞
知道小有建树答主
回答量:401
采纳率:0%
帮助的人:539万
展开全部
没办法的,肯定要导入包的啊~

你想让java程序自己找到包,这个有点异想天开,不过也不是没有可能

除非你自己把ClassLoader的工作,加载类(poi.jar、commons-lang.jar)的工作你自己写代码实现,这样肯定没问题
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
devilzy_boy
2010-03-10 · TA获得超过146个赞
知道小有建树答主
回答量:189
采纳率:0%
帮助的人:124万
展开全部
其实有一个比较恶心的方法,就是你把你需要的那两个包都解压,然后将里面的class文件全部添加到jdk1.5的包中,这样就不用再配置classpath就可以自行查到,但是还是不建议这样做,作为程序员,我觉得还是遵循原则比较好,其实就是配置一下环境变量没有什么难度啊,还可以在熟练一下...
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式