首页 > 代码库 > 项目打jar包后无法获取配置文件的路径问题

项目打jar包后无法获取配置文件的路径问题

项目打jar包后无法获取配置文件的路径问题

 

 

今天在开发中做一个java项目,要求读取配置文件中的信息,当项目打jar包以后就找不到配置文件了,问题最后解决了,拿出来跟大家分享一下。

 方式一:getResource(这种方式在war包好用,在jar包不好用):

public static void main(String[] args) {        String path=App.class.getClassLoader().getResource("config.properties").getPath();        System.err.println(path);        File file = new File(path);        if (!file.exists()) {            System.out.print("config.properties文件不存在");        }else{           System.err.println("绝对路径:"+file.getAbsolutePath());        }    }
==========================================================
结果:

/D:/git/practice/kafka-practice/target/classes/config.properties
绝对路径:D:\git\practice\kafka-practice\target\classes\config.properties

方式二:getResourceAsStream (jar包必用)

public static void main(String[] args) throws IOException {        InputStream in = App.class.getClass().getResourceAsStream("/config.properties");        Properties prop=new Properties();        prop.load(in);        System.err.println(prop);    }
===================================================
结果:

{metadata.broker.list=cluster1:9092, compression.codec=1,zookeeper.connect=cluster1:2181,cluster2:2181,cluster3:2181, producer.type=async}

 


项目打jar包后无法获取配置文件的路径问题