我的Spring启动应用(v2.1.1.RELEASE)使用以下插件和布局进行打包:
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<finalName>my-service-${project.version}</finalName>
<mainClass>com.my.app.MainClass</mainClass>
<layout>ZIP</layout>
</configuration>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
我正在使用以下启动脚本:
java -Dloader.path=/path/to/config/dir/ -jar my-service-1.0.jar
在我的应用具有的一种依赖关系中,以下代码用于读取外部xml配置文件(例如hbase-site.xml):
URL url = ClassLoader.getSystemResource(filename);
这就是为什么我尝试使用loader.path使这些文件可用,但该应用程序仍然无法读取提供的目录中存在的文件的原因。我还想念其他东西吗?
答案 0 :(得分:0)
我认为这应该是getSystemResource的问题,请尝试使用getClassLoader()。getResourceAsStream(path)