在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应用程序中读取自定义配置文件时出错的主要内容,如果未能解决你的问题,请参考以下文章
dropwizard 应用程序中的配置更改以与 react browserHistory 一起使用