public class MainVerticle extends AbstractVerticle {
@Override
public void start(Future<Void> startFuture) throws Exception {
JsonObject data = this.config();
// read port and other configuration related stuff from JsonObject
}
}
// Get the system property store (type = sys)
val sysPropsStore = ConfigStoreOptions().setType("sys")
// Add system property store to the config retriever options
val options = ConfigRetrieverOptions().addStore(sysPropsStore)
// And create a ConfigRetriever
val retriever = ConfigRetriever.create(vertx, options)
// Set the default port
var httpPort: Int = 8080
retriever.getConfig { ar ->
if (ar.failed()) {
// Failed to retrieve the configuration
} else {
val config = ar.result()
if (config.containsKey("http.port"))
httpPort = config.getInteger("http.port")
}
}
2条答案
按热度按时间vsaztqbk1#
最好的方法是定义一个json文件并在其中添加所有与配置相关的vertx。
启动应用程序时将config.json作为参数传递。
以下是示例:
config.json文件
运行应用程序时将config.json作为参数传递
java-jar myapp.jar--conf=/path到config.json
所以你可以在你的主页上阅读这个json文件
我希望这能帮助你:)
jmp7cifd2#
正如@dpr所指出的,configretriever是一条出路。
以下是我最后做的: