Quarkus - Extensions
Categories
Think of Quarkus extensions as your project dependencies. Extensions configure, boot and integrate a framework or technology into your Quarkus application. They also do all of the heavy lifting of providing the right information to GraalVM for your application to compile natively.
Adding an extension is as easy as adding a dependency or use Quarkus tooling.
$ mvn quarkus:list-extensions
$ mvn quarkus:add-extension -Dextensions="groupId:artifactId"
# Or
$ gradle list-extensions
# and add the dependency in your dependencies section
Explore the wide breadth of technologies Quarkus applications can be made with.
Core
-
Configuration
包含: MicroProfile Configuration via SmallRye
-
Logging
包含: centralized log management for Quarkus
-
ArC
构建时依赖注入
io.quarkus:quarkus-arc
Web
-
Netty
Netty 是一个非阻塞 I/O client-server 框架. 是 Quarkus 的基石.
io.quarkus:quarkus-netty
-
RESTEasy JAX-RS
实现 JAX-RS 的 REST 框架
io.quarkus:quarkus-resteasy
-
RESTEasy JSON-B
为 RESTEasy 提供 JSON-B 序列化支持
io.quarkus:quarkus-resteasy-jsonb
-
RESTEasy Jackson
为 RESTEasy 提供 Jackson 序列化支持
io.quarkus:quarkus-resteasy-jackson
-
SmallRye JWT
用 JSON Web Token 保护你的应用
io.quarkus:quarkus-smallrye-jwt
-
SmallRye OpenAPI
用 OpenAPI 文档化你的 REST APIs - 配合 Swagger UI
io.quarkus:quarkus-smallrye-openapi
-
REST Client
调用 REST services
io.quarkus:quarkus-rest-client
-
Undertow Servlet
支持 servlets
io.quarkus:quarkus-undertow
-
Undertow WebSockets
WebSocket 支持
io.quarkus:quarkus-undertow-websockets
-
Hibernate Validator
验证进入的数据
io.quarkus:quarkus-hibernate-validator
Data
-
Hibernate ORM
用 Hibernate ORM 和 JPA 操作数据库
io.quarkus:quarkus-hibernate-orm
-
Hibernate ORM with Panache
用 Hibernate ORM 和 Panache 操作数据库
io.quarkus:quarkus-hibernate-orm-panache
-
Hibernate Validator
验证数据
io.quarkus:quarkus-hibernate-validator
-
Hibernate Search + Elasticsearch
自动在 Elasticsearch 中索引 Hibernate entity
io.quarkus:quarkus-hibernate-search-elasticsearch
-
Flyway
数据库表结构变更管理
io.quarkus:quarkus-flyway
-
MongoDB with Panache
使用 active record 或 repository 模式操作 MongoDB
io.quarkus:quarkus-mongodb-panache
-
JDBC Driver - H2
H2 数据库驱动
io.quarkus:quarkus-jdbc-h2
-
JDBC Driver - MariaDB
MariaDB 数据库驱动
io.quarkus:quarkus-jdbc-mariadb
-
JDBC Driver - MySQL
MySQL 数据库驱动
io.quarkus:quarkus-jdbc-mysql
-
JDBC Driver - PostgreSQL
PostgreSQL 数据库驱动
io.quarkus:quarkus-jdbc-postgresql
-
JDBC Driver - Microsoft SQL Server
Microsoft SQL Server 数据库驱动
io.quarkus:quarkus-jdbc-mssql
-
JDBC Driver - Derby
Derby 数据库驱动
io.quarkus:quarkus-jdbc-derby
-
Infinispan Client
连接到 Infinispan 分布式缓存数据网格
io.quarkus:quarkus-infinispan-client
-
Infinispan Embedded
运行一个嵌入式 Infinispan 分布式缓存数据网格服务器
io.quarkus:quarkus-infinispan-embedded
-
Agroal - Database connection pool
数据库连接池 (已包含在 Hibernate ORM)
io.quarkus:quarkus-agroal
-
Reactive MySQL client
反应式 MySQL 数据库客户端
io.quarkus:quarkus-reactive-mysql-client
-
Reactive PostgreSQL client
反应式 PostgreSQL 数据库客户端
io.quarkus:quarkus-reactive-pg-client
-
MongoDB client
反应式 MongoDB 客户端
io.quarkus:quarkus-mongodb-client
-
Neo4j client
Neo4j 图数据库客户端
io.quarkus:quarkus-neo4j
-
Amazon DynamoDB client
Amazon DynamoDB 客户端
io.quarkus:quarkus-amazon-dynamodb
-
Narayana JTA - Transaction manager
JTA 事务支持 (已包含在 Hibernate ORM)
io.quarkus:quarkus-narayana-jta
-
Narayana STM - Software Transactional Memory
Software Transactional Memory (stm) support
io.quarkus:quarkus-narayana-stm
Messaging
-
SmallRye Reactive Messaging
Reactive Streams 用的异步消息
io.quarkus:quarkus-smallrye-reactive-messaging
-
SmallRye Reactive Messaging - Kafka Connector
Kafka 反应式消息连接器
io.quarkus:quarkus-smallrye-reactive-messaging-kafka
-
SmallRye Reactive Messaging - AMQP Connector
AMQP 反应式消息连接器
io.quarkus:quarkus-smallrye-reactive-messaging-amqp
-
SmallRye Reactive Messaging - MQTT Connector
MQTT 反应式消息连接器
io.quarkus:quarkus-smallrye-reactive-messaging-mqtt
-
Apache Kafka Client
Apache Kafka 客户端
io.quarkus:quarkus-kafka-client
-
Apache Kafka Streams
基于Apache Kafka实现流处理应用程序
io.quarkus:quarkus-kafka-streams
-
Artemis Core
Use ActiveMQ Artemis as message broker
io.quarkus:quarkus-artemis-core
-
Artemis JMS
Use ActiveMQ Artemis as a JMS implementation
io.quarkus:quarkus-artemis-jms
Reactive
-
Eclipse Vert.x
反应式应用程序工具包
io.quarkus:quarkus-vertx
-
SmallRye Reactive Streams Operators
Operators for Reactive Streams programming
io.quarkus:quarkus-smallrye-reactive-streams-operators
-
SmallRye Reactive Type Converters
Converters for reactive types from various reactive programming libraries
io.quarkus:quarkus-smallrye-reactive-type-converters
-
SmallRye Context Propagation
SmallRye 上下文传播
io.quarkus:quarkus-smallrye-context-propagation
-
Reactive PostgreSQL client
PostgreSQL 数据库的反应式客户端
io.quarkus:quarkus-reactive-pg-client
Business Automation
-
Kogito
使用 Kogito 增加业务自动化能力
io.quarkus:quarkus-kogito
Cloud
-
Kubernetes
从注解中生成 Kubernetes 资源
io.quarkus:quarkus-kubernetes
-
Kubernetes Client
Interact with Kubernetes and develop Kubernetes Operators
io.quarkus:quarkus-kubernetes-client
-
AWS Lambda
AWS Lambda 支持
io.quarkus:quarkus-amazon-lambda
-
SmallRye Fault Tolerance
Define fault-tolerant services
io.quarkus:quarkus-smallrye-fault-tolerance
-
SmallRye Health
健康检测
io.quarkus:quarkus-smallrye-health
Observability
-
SmallRye Metrics
从服务中提取指标
io.quarkus:quarkus-smallrye-metrics
-
SmallRye OpenTracing
用 Jaeger 跟踪服务
io.quarkus:quarkus-smallrye-opentracing
Security
-
OpenID Connect
用 OpenID Connect 和 Keycloak 保护应用程序
io.quarkus:quarkus-oidc
-
Vault
存储凭据到 HashiCorp Vault
io.quarkus:quarkus-vault
-
Elytron Security
Secure your services
io.quarkus:quarkus-elytron-security
-
SmallRye JWT
Secure your applications with JSON Web Token
io.quarkus:quarkus-smallrye-jwt
-
Elytron Security OAuth 2.0
Secure your applications with OAuth2 opaque tokens
io.quarkus:quarkus-elytron-security-oauth2
-
Elytron Security JDBC Realm
Secure your applications with username/password stored in a database
io.quarkus:quarkus-elytron-security-jdbc
Serialization
-
JSON-B
JSON 绑定支持
io.quarkus:quarkus-jsonb
-
Jackson
Jackson 数据绑定支持
io.quarkus:quarkus-jackson
-
JSON-P
JSON 处理支持
io.quarkus:quarkus-jsonp
-
RESTEasy JSON-B
为 RESTEasy 提供 JSON-B 支持
io.quarkus:quarkus-resteasy-jsonb
-
RESTEasy Jackson
为 RESTEasy 提供 Jackson 序列化支持
io.quarkus:quarkus-resteasy-jackson
-
JAXB
XML 序列化支持
io.quarkus:quarkus-jaxb
Miscellaneous
-
Mailer
发送 emails
io.quarkus:quarkus-mailer
-
Scheduler - tasks
调度任务
io.quarkus:quarkus-scheduler
-
Apache Tika
用 Apache Tika 从文档中提取数据
io.quarkus:quarkus-tika
-
JGit
访问 Git 仓库
io.quarkus:quarkus-jgit
Compatibility
-
Quarkus Extension for Spring DI API
Define your dependency injection with Spring DI
io.quarkus:quarkus-spring-di
-
Quarkus Extension for Spring Web API
Use Spring Web annotations to create your REST services
io.quarkus:quarkus-spring-web
-
Quarkus Extension for Spring Data JPA API
Use Spring Data JPA annotations to create your data access layer
io.quarkus:quarkus-spring-data-jpa
Alternative languages
-
Kotlin
用 Kotlin 编写
io.quarkus:quarkus-kotlin
-
Scala
用 Scala 编写
io.quarkus:quarkus-scala