简单的jar包(含有依赖jar)
程序员文章站
2022-05-04 18:17:37
...
背景:
每每有测试询问批次状态或者流水结果,就得一遍又一遍的打开PL/SQL,写一个又一个重复的sql,将需要查询的流水放到固定的where条件中。
所以就想直接搞个jar出来,让测试自己输入环境和流水,就可以自己简单查询。由此。
动手
首先是动手写了一个基本的类,参数三个(环境,需要查询的sql的ID,流水号(批次号))
以下记录部分代码:
Connection connection = null;
Statement nstm = null;
ResultSet rs = null;
Class.forName(driver);
connection = DriverManager.getConnection(url, user, password);// 获取连接
connection.setAutoCommit(false);
nstm = conn.createStatement();
rs = nstm.executeQuery(sql);
conn.commit();
根据ID获取sql语句,拼接流水号,就可以查询到结果了!
问题出现
以上步骤其实很简单也很顺利,但是当我满怀欣喜将这个进行打包。
先创建了一个文件:MANIFEST.MF
javac -encoding utf8 .\Select.java
jar cvfm Select.jar Manifest.MF Select.class
java -jar Select.jar
理论上上述执行完,会提示没有主清单属性,原因是MANIFEST.MF文件缺少一个主类
在MANIFEST.MF中添加一句:
Main-class: Select
即可。
再运行发现报错,NoClassFound,原来是缺少ojdbc.jar
后来就百度了好久也没有专门的 在打好的jar包中,将依赖jar包也添加至该jar包中。
问题处理
第二天我就打算直接简单点,放到了eclipse中去打包,后面将依赖包也导入进去,发现是可以直接执行的,也能查询到我想要的结果。
又到了打包的一步了......
用eclipse打包发现,
Class-Path: . SxS_lib/ojdbc6.jar
Main-Class: SxSelect
!!就是差了这一句
**Class-Path: . SxS_lib/ojdbc6.jar**
然后就可以肆意妄为的添加sql以及查询嘞!
上一篇: 线程的基本操作
下一篇: Java多线程---线程、同步