如何从maven java项目加载外部属性文件
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了如何从maven java项目加载外部属性文件,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1384字,纯文字阅读大概需要2分钟。
内容图文
我有一个maven java项目,在src / main / resources目录中有一个属性文件.我已经在jar中打包了没有属性文件的jar,因此它可以部署到具有不同设置的不同环境,但是单元测试失败了
项目结构是
Properties Application Project
|-- pom.xml
`-- src
|-- main
|-- java
| `-- java classes
|-- resources
| `-- myProps.properties
`-- target
|--properties-app.jar
myProps.properties
值将加载到此文件中
public class MyProperties {
private Properties myProperties;
public MyProperties() {
File file = new File("./myProps.properties");
try {
myProperties = new Properties();
FileInputStream myPropertiesInputStream = new FileInputStream(file);
myProperties.load(myPropertiesInputStream);
} catch (IOException e) {
e.printStackTrace();
}
}
public Properties getPropertyValue() {
return myProperties.getProperty("value");
}
}
单元测试如下
import static org.junit.Assert.*;
import org.junit.Before;
import org.junit.Test;
public class MyPropertiesTest {
private MyProperties myProperties;
@Before
public void setup() {
myProperties = new MyProperties();
}
@Test
public void testMyProperties() {
assertNotNull(myProperties.getPropertyValue());
}
}
我应该使用什么来从目标目录加载属性文件,以便我可以从命令行成功构建它?
解决方法:
我希望你使用的是maven jar插件.如果是这样,请在jar-plugin中使用此配置
<configuration>
<archive>
<manifestEntries>
<Class-Path>.</Class-Path>
</manifestEntries>
</archive>
</configuration>
然后jar将从jar文件的根目录中获取属性文件.
内容总结
以上是互联网集市为您收集整理的如何从maven java项目加载外部属性文件全部内容,希望文章能够帮你解决如何从maven java项目加载外部属性文件所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。