在dropwizard Application

时间:2017-12-18 22:49:17

标签: java configuration 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 

非常感谢任何评论!

1 个答案:

答案 0 :(得分:0)

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

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