我是Dropwizard和Guice的新手,因此我遵循了本教程:Dropwizard and Guice Integration。执行main方法时,我遇到了这个错误:
default configuration has an error:
* message can not be found (was null)
所以我猜Guice注射不起作用。
我有与教程完全相同的代码,除了我plugins
中没有pom.xml
部分,我在主方法中有这一行:
new ServiceApplication().run(new String[] {"server"});
而不是:
new ServiceApplication().run(args);
我错过了什么吗?我必须添加什么吗?
感谢。
答案 0 :(得分:0)
是的,你错过了重要的一点。
本文提供了以下用于运行dropwizard
应用程序的命令(请注意server
选项后的字符串,该文件使用配置选项指向该文件):
$ java -jar target / DropWizardGuice-1.0-SNAPSHOT.jar服务器 config.yml
本文前面还介绍了配置.yml
文件与Guice
之间的关系:
现在我们需要一些粘合代码,它从配置文件中获取消息,使其可供Guice使用。
将main
方法中的代码更改为:
new ServiceApplication()。run(new String [] {" server"});
您明确拒绝提供有关配置选项所在位置的dropwizard
信息(在您的情况下包括message
属性的值)。这就是错误信息所说的内容。