一、准备一个Quarkus项目
可使用Quarkus CLI快速生成一个Quarkus项目,如下所示:
quarkus create
该命令将生成一个名为code-with-quarkus
的项目,如果不想使用quarkus-cli
,也可基于Quarkus脚手架或IDE插件创建项目。
进入项目根目录,编译运行:
mvn compile quarkus:dev
或生成jar包后运行:
mvn package -Dquarkus.package.type=uber-jar
java -jar target/*.jar
验证应用:
curl http://localhost:8080/hello
二、构建可执行文件
执行maven打包时,quarkus-maven-plugin
插件可根据quarkus.package.type
配置的值决定生成文件的类型,配置为uber-jar
生成则可执行jar包(如前文所示),配置为native
则生成原生可执行文件,如下所示:
mvn package -Dquarkus.package.type=native
运行可执行文件:
./target/*-runner
验证应用:
curl http://localhost:8080/hello
上述生成可执行文件的命令需要GraalVM环境,如果不想配置GraalVM,也可以使用Docker完成构建:
mvn package -Dquarkus.package.type=native -Dquarkus.native.container-build=true
ARM架构的MacBook电脑可能会执行失败,可暂时使用x86机器构建。
三、构建镜像
使用quarkus-maven-plugin
插件的image-build
执行目标构建Docker镜像:
mvn quarkus:image-build
该命令会生成一个Docker镜像,如:luanrz/code-with-quarkus:1.0.0-SNAPSHOT
。
运行容器:
docker run --rm -p 8080:8080 luanrz/code-with-quarkus:1.0.0-SNAPSHOT
验证应用:
curl http://localhost:8080/hello
参考文档