Wikipedia上有关 Quarkus 的信息还很少,只有一句简单的介绍:
与如 Spring 之类的其他框架相比,它提供了较小的内存占用并缩短了启动时间。它允许结合命令式和非阻塞响应式编程。
从 Quarkus 的官网,可以看到其有几个特性:
更多 Quarkus 可以参考官网的介绍及文档。今天主要就是跑一下 Quarkus 的 Hello world。
注意这里使用 intellij 运行单元测试的话,会报错。quarkus-getting-started-1.0.0-SNAPSHOT.jar 仅包含了项目编译的类和资源文件,是不可执行的 jar
quarkus-app 目录中包含了可执行的 jar 文件 quarkus-run.jar ,但是,其并不是一个 über-jar,项目的依赖库都位于 lib目录中。
qurakus 的打包方式有两种:legacy-jar 和 fast-jar。可以在 application.properties 文件中进行指定,未显式指定默认为 legacy-jar。
quarkus.package.type=fast-jar
如果要在容器中运行,同样需要部署整个 quarkus-app 目录 fast-jar 类型的包比 legacy-jar 的包启动会快一点点,同时占用的内存也更低。因为 fast-jar 的包含了依赖包中的类和资源文件的索引,避免在类和资源文件加载时对 classpath 下的包的查找。
