Quarkus
约 2 分钟阅读
- QuarkusLinkquarkus.ioQuarkus - Kubernetes Native Java stack tailored for GraalVM & OpenJDK HotSpot · code.quarkus.io 项目生成,类似于 spring 的 start · RedHat 团队 - 依赖的主要是 RH 相关的中间件笔记:Quarkus - Kubernetes Native Java stack tailored for GraalVM & OpenJDK HotSpot
- code.quarkus.ioLinkcode.quarkus.ioQuarkus - Kubernetes Native Java stack tailored for GraalVM & OpenJDK HotSpot · code.quarkus.io 项目生成,类似于 spring 的 start · RedHat 团队 - 依赖的主要是 RH 相关的中间件笔记:Quarkus 项目生成,类似于 spring 的 start
- RedHat 团队 - 依赖的主要是 RH 相关的中间件
- 主要优势
- 快速启动
- 内存占用少
- quarkus-maven-plugin 对开发友好
- cdi+resteasy = 20mb 二进制
- 主要依赖
- quarkus arc - CDI
- 非反射 - 因为 Graalvm 不支持大部分反射
- 在部署时生成元数据类
- META-INF/jandex.idx
*.zig- Jvm IR- quarkus.index-dependency 配置项
- Substrate VM
- undertow - 默认 servlet 容器
- resteasy - jaxrs 实现
- quarkus-hibernate-orm-panache - 类似于 ActiveRecord 的扩展
- MicroProfile - 微服务相关能力
- quarkus arc - CDI
quarkus-maven-plugin
| 命令 | 说明 |
|---|---|
| mvn quarkus | 添加扩展 |
| mvn quarkus | 添加扩展 |
| mvn quarkus | 分析调用树 |
| mvn quarkus | 构建 |
| mvn quarkus | 创建项目,生成文件 |
| mvn quarkus | 创建扩展 |
| mvn quarkus | 启动开发服务 |
| mvn quarkus | 生成示例配置 |
| mvn quarkus | 帮助 |
| mvn quarkus | 查看扩展 |
| mvn quarkus | 构建本地镜像 |
| mvn quarkus | 远程开发 |
# 启动开发服务
mvn compile quarkus:dev
# 构建 native 镜像
mvn package -Pnative
# 如果没有设置 GRAALVM_HOME 可以手动设置
GRAALVM_HOME=~/jdk/graalvm/Contents/Home/ mvn package -Pnative
# 如果失败,尝试安装 native-image
# 创建项目
mvn io.quarkus:quarkus-maven-plugin:0.22.0:create \
-DprojectGroupId=org.acme \
-DprojectArtifactId=application-lifecycle-events \
-DclassName="org.acme.events.GreetingResource" \
-Dpath="/hello"
mvn io.quarkus.platform:quarkus-maven-plugin:2.16.4.Final:create \
-DprojectGroupId=org.acme \
-DprojectArtifactId=openapi-swaggerui-quickstart \
-Dextensions='resteasy-reactive-jackson' \
-DnoCode
cd openapi-swaggerui-quickstart关联信息
反向链接、本文链接的其他页面和外部资料。
References
其他外链2 条
- code.quarkus.iocode.quarkus.io/
- quarkus.ioquarkus.io/