求适配Quarkus 3.8.4的最新版Kogito的POM示例
适配Quarkus 3.8.4与最新版Kogito的POM示例
以下是适配Quarkus 3.8.4和当前稳定版Kogito的完整POM配置,基于你参考的流程Saga示例调整而来:
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>org.acme</groupId> <artifactId>process-saga-quarkus</artifactId> <version>1.0.0-SNAPSHOT</version> <packaging>jar</packaging> <properties> <quarkus.version>3.8.4</quarkus.version> <!-- 适配Quarkus 3.x的最新稳定Kogito版本 --> <kogito.version>1.44.0.Final</kogito.version> <maven.compiler.source>17</maven.compiler.source> <maven.compiler.target>17</maven.compiler.target> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> </properties> <dependencyManagement> <dependencies> <!-- 引入Quarkus BOM统一管理依赖版本 --> <dependency> <groupId>io.quarkus</groupId> <artifactId>quarkus-bom</artifactId> <version>${quarkus.version}</version> <type>pom</type> <scope>import</scope> </dependency> <!-- 引入Kogito Quarkus BOM,确保与Quarkus版本兼容 --> <dependency> <groupId>org.kie.kogito</groupId> <artifactId>kogito-bom-quarkus</artifactId> <version>${kogito.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <dependencies> <!-- Kogito流程核心依赖 --> <dependency> <groupId>org.kie.kogito</groupId> <artifactId>kogito-quarkus-process</artifactId> </dependency> <!-- REST API支持 --> <dependency> <groupId>io.quarkus</groupId> <artifactId>quarkus-resteasy-reactive</artifactId> </dependency> <dependency> <groupId>io.quarkus</groupId> <artifactId>quarkus-resteasy-reactive-jackson</artifactId> </dependency> <!-- 测试依赖 --> <dependency> <groupId>io.quarkus</groupId> <artifactId>quarkus-junit5</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.kie.kogito</groupId> <artifactId>kogito-quarkus-test-utils</artifactId> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <!-- Quarkus构建插件 --> <plugin> <groupId>io.quarkus</groupId> <artifactId>quarkus-maven-plugin</artifactId> <version>${quarkus.version}</version> <executions> <execution> <goals> <goal>build</goal> <goal>generate-code</goal> <goal>generate-code-tests</goal> </goals> </execution> </executions> </plugin> </plugins> </build> <profiles> <profile> <id>native</id> <activation> <property> <name>native</name> </property> </activation> <build> <plugins> <plugin> <groupId>io.quarkus</groupId> <artifactId>quarkus-maven-plugin</artifactId> <executions> <execution> <goals> <goal>native-image</goal> </goals> <configuration> <enableHttpUrlHandler>true</enableHttpUrlHandler> </configuration> </execution> </executions> </plugin> </plugins> </build> </profile> </profiles> </project>
关键配置说明
- 版本对齐:通过
kogito-bom-quarkus引入适配Quarkus 3.x的Kogito依赖,避免版本冲突,这是常见的踩坑点 - JDK版本:指定JDK 17,符合Quarkus 3.x的最低要求(JDK 11+),确保编译运行环境兼容
- 核心依赖:仅保留流程示例必需的依赖,避免冗余;如果需要添加规则、决策等功能,可引入对应Kogito扩展(如
kogito-quarkus-decisions) - 构建插件:确保
quarkus-maven-plugin版本与Quarkus主版本完全一致,保证代码生成和构建流程正常
常见问题排查
- 启动时提示类缺失,检查是否遗漏了对应的Kogito扩展依赖
- 出现版本冲突,确认
dependencyManagement中的BOM是否正确引入,且没有手动指定其他依赖版本 - 本地构建失败时,尝试清理Maven缓存(
mvn clean install -U)重新构建
内容的提问来源于stack exchange,提问作者chvillamizar
相关产品推荐
相关产品推荐

