在dropwizard应用程序中读取自定义配置文件时出错

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在dropwizard应用程序中读取自定义配置文件时出错相关的知识,希望对你有一定的参考价值。

所以我们有一个正常的批处理应用程序,我们决定移植到dropwizard。我们希望使用dropwizard来获得开箱即用的许多好处,例如HealthCheck,指标等。

我们稍后可能会添加一些REST管理端点,但现在我们只是使用DropWizard托管服务在一个单独的线程中启动我们的应用程序。我们创建了一个示例配置yml文件,但它主要只是一个骨架。

这种移植只是提升和转移,我们希望在代码中避免使用巨大的重构。该应用程序目前与两个不同的属性文件绑定,我们希望保持这种方式。

我们已经找到了使用自定义部署程序部署我们的应用程序的方法,该部署程序生成这些属性文件“application.properties”和“system.properties”由于某种原因,应用程序无法读取这些文件并且正在抛出NPE。这是一个java应用程序。所有的jar都在lib目录下,配置文件在config目录下。它似乎没有解决这些文件。我试过搜索dropwizard文档,但没有找到任何有用的东西。代码只是简单地期望特定目录中的文件

private static final String APP_PROPERTIES_FILE = "/application.properties";
File file = new File(DataSourceFactory.class.getResource(filename)
            .getFile());

dropwizard版本:1.2.2这就是我运行应用程序的方式:

java -cp "deployed/App/lib/*:deployed/App/config/*"  com.commercehub.app.MainClass server config.yml 

任何评论都非常感谢!

答案

问题出在我的classpath上。我不需要配置文件夹的尾随/ *。

java -cp "deployed/App/lib/*:deployed/App/config"  com.commercehub.app.MainClass server config.yml

以上是关于在dropwizard应用程序中读取自定义配置文件时出错的主要内容,如果未能解决你的问题,请参考以下文章

自定义jar配置文件问题?

dropwizard 应用程序中的配置更改以与 react browserHistory 一起使用

在SpringBoot下读取自定义properties配置文件的方法

Springboot读取配置文件及自定义配置文件

java读取自定义配置文件并引用

springboot读取自定义properties配置文件方法