我正在编写一个 Java 命令行应用程序,该应用程序旨在从数据库读取和写入,并在完成工作后完成执行。
它永远不会向任何人公开 REST 接口,也不需要启动服务器并监听任何端口。
所以应用程序是这样的:
public class Main {
public static void main(final String[] args) {
// Start Helidon CDI, JTA, etc. - but not JAX-RS
// No: Server.create().start();
// No: io.helidon.microprofile.cdi.Main.main(args);
// Do work
MyApp myApp = CDI.current().select(MyApp.class).get();
app.run();
// Shutdown
io.helidon.microprofile.cdi.Main.shutdown();
}
}
但是,但是我初始化了 Helidon 框架,一个 Web 服务器启动并开始监听端口 8080(或其他)。即使使用 Helidon 的 Main.main(...) 方法,也会启动 Web 服务器。
那么如何启动/初始化 Helidon 以与具有 CDI、JTA、JPA 但没有 Web 服务器的命令行应用程序一起使用?
就 Spring Boot 而言,我想我要求 Helidon 相当于CommandLineRunner
.