【问题标题】:vertx 3 Setting external json configuration filevertx 3 设置外部json配置文件
【发布时间】:2017-09-04 09:51:52
【问题描述】:

我从 2015 年开始学习本教程(已过时?): http://vertx.io/blog/vert-x-application-configuration/

我在 java 8 中使用 maven 和 vertx 3,我尝试使用 java -jar ... -conf ...path/conf.json 将外部 json 配置传递给 fat jar,应用程序启动,但所有配置值为 null。 它应该告诉我-conf 选项未知或找不到配置文件,但它只是返回 null。

  @Override
  public void start(final Future<Void> fut) {
    config().getString("some.custom.key") // always returns null, but throws no error
  }

我必须使用 https://github.com/vert-x3/vertx-config 之类的东西吗? 我应该使用vertx.getOrCreateContext().config(); 还是只使用config().

解决方案 如果找不到配置,所有返回值将默认为空,但不是配置本身。对我来说,这只是单元测试,因为它们没有配置设置。

【问题讨论】:

  • 如果您将-conf 与JSON 文件一起使用,您的verticle 的config() 方法应该为您提供该文件的内容。你能用一些关于代码的细节来更新你的问题吗?你如何创建你的脂肪罐?主要课程是什么?
  • 我认为它在verticle的start(Future&lt;Void&gt; fut)方法中不起作用,但它不应该失败,还是某种默认上下文接管?我可以在那里访问配置吗?
  • @tsegismont 更新了一些代码
  • @tsegismont nulls 实际上只存在于单元测试中,这令人困惑,我仍然认为它应该抛出错误而不是默认为 null
  • 如果只是在运行单元测试时,那么你应该检查你的 Maven/IDE 配置。

标签: java configuration vert.x


【解决方案1】:

如果 VertX 找不到配置,所有返回的值将默认为 null,但不是配置不会为 null,VertX 不会引发任何错误(静默)。对我来说,这只是单元测试,因为它们没有配置设置,使用-conf 定期启动就可以了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-23
    • 2023-04-07
    • 1970-01-01
    • 1970-01-01
    • 2018-05-06
    • 2014-03-14
    相关资源
    最近更新 更多