scala+Maven工程读取jar包外的配置文件
来源:互联网 发布:传奇荣耀辅助软件 编辑:程序博客网 时间:2024/06/11 21:49
我的笔记
程序中为了连接数据库,存在很多数据库的集群的信息,为了能让程序在不同的的集群中运行,需要到程序中更改集群数据库的配置。这里希望能将这些配置单独写成一个配置文件,方便迁移。在Windows系统下将配置信息直接写到resource目录下的配置文件(.properties文件)里即可,读取该conf.properties文件代码如下:
val properties = new Properties()val path = Thread.currentThread().getContextClassLoader.getResource("conf.properties").getPathproperties.load(new FileInputStream(path))val hbase_quorum = properties.getProperty("hbase_quorum")//"hbase_quorum"为conf.properties文件中键值名
此时通过clean、package的方法直接打包在Linux系统里运行的时候,报错表示找不到目录
Exception in thread "main" java.io.FileNotFoundException: file:/home/hadoop/test/app.jar!/conf.properties (No such file or directory)
而且这样配置文件会打包在jar包内,之后修改也会产生问题。如此我们希望能将conf.properties拿到与jar包同一级的目录下,让程序读取jar包外的文件。为此,考虑先得到系统路径,再找在改路径下的文件或者文件夹。这里我将conf.properties文件直接放在与jar同级目录下,读取jar包外文件代码如下:
val properties = new Properties()val filePath = System.getProperty("user.dir") + "/conf.properties"//获取系统路径和最终文件路径 properties.load(new FileInputStream(filePath))println(filePath)val hbase_quorum = properties.getProperty("hbase_quorum")//"hbase_quorum"为conf.properties文件中键值名
这样在打包的时候可以先将配置文件剪切出来,和jar包一起上传到Linux系统中同一目录下。在其他集群运行该jar包时只需要修改配置文件即可,不需要将代码重新打包上传。
阅读全文
0 0
- scala+Maven工程读取jar包外的配置文件
- scala的maven项目读取配置文件
- 读取JAR包中配置文件的解决方法
- jar包里的类读取配置文件
- 读取jar包内外的配置文件
- jar包中配置文件路径的读取
- 读取JAR包中配置文件的解决方法
- jar包想读取jar包以外的配置文件
- jar包读取jar包内部和外部的配置文件
- Maven导出工程依赖的jar包
- java读取jar包配置文件
- 读取Jar包中的配置文件
- maven 配置文件打jar 包
- [【Maven】Maven导出工程依赖的jar包
- eclipse maven导出maven工程的依赖jar包
- java导出jar包以及jar内程序读取jar包外配置文件
- maven 打包Scala代码到jar包
- 读取Jar包内的资源或配置文件
- 欢迎使用CSDN-markdown编辑器
- java-源码解读-线程池实现原理-0
- 数据结构实验之排序四:寻找大富翁(堆排序)
- hdu3657 奇偶方格取数
- POJ 1163The Triangle(dp或记忆化搜索)
- scala+Maven工程读取jar包外的配置文件
- LAMP搭建环境 ubuntu16.04 apache7 + mysql+ phpmyadmin
- HTML5+CSS3自学笔记02-CSS特性、样式、优先级
- HDU6127(极角排序)
- eval函数的用法
- 【BZOJ】3430 [Usaco2014 Jan]Ski Course Rating 并查集
- ROS2探索总结(一)——ROS成长记
- 【脚本】自动截图并上传
- Java四种对象的引用类型