如果在打jar包的时候有依赖包,需要设置-cp参数和-Djava.ext.dirs才行,-cp是classpath的意思,程序执行的时候会首先在这里面去查找对应的类@H_403_1@
java -cp lib -Djava.ext.dirs=lib -jar fileexport.jar
@H_403_1@
对于配置文件,一般打jar包的时候,会把配置文件放在jar包外面,程序里面读取的方式还是相同的
打包前:
props.load(WriteCSVTestCase.class.getClassLoader().getResourceAsStream( "db.properties"));@H_403_1@ 打包后:
props.load(WriteCSVTestCase.class.getClassLoader().getResourceAsStream( "db.properties"));@H_403_1@
我的理解是:打包前,你在运行的时候,相对路径是这个文件,
打包后,你运行的时候,相对路径是这个包
原文链接:https://www.f2er.com/javaschema/285092.html