首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在命令行应用程序中使用Helidon?

如何在命令行应用程序中使用Helidon?
EN

Stack Overflow用户
提问于 2021-09-22 12:51:52
回答 1查看 74关注 0票数 0

我正在编写一个Java命令行应用程序,该应用程序打算从数据库中读取和写入数据,并在完成工作后完成执行。

它永远不会向任何人公开REST接口,也不需要启动服务器并侦听任何端口。

所以这个应用程序是这样的:

代码语言:javascript
复制
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

EN

回答 1

Stack Overflow用户

发布于 2021-09-22 20:54:44

如果您只想启动一个CDI容器,以便您的应用程序可以由CDI管理,那么您可能只需要使用SeContainerInitializer,它只是一个普通的CDI。您可以在使用或不使用Helidon的情况下执行此操作。

如果您想使用Helidon JPA/JTA特性,它们是通过普通的CDI可移植扩展机制公开的,所以只需将它们放在类路径中即可。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69284639

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档