第 3 章 为红帽构建 Kogito 微服务创建 Maven 项目
在开始开发 Kogito 微服务的红帽构建前,您需要创建一个 Maven 项目,您可以在其中构建资产以及应用程序的任何其他相关资源。
流程
- 在命令终端中,导航到要存储新项目的本地文件夹。
输入以下命令在定义的文件夹中生成项目:
在 Red Hat build of Quarkus 上
$ mvn io.quarkus:quarkus-maven-plugin:create \ -DprojectGroupId=org.acme -DprojectArtifactId=sample-kogito \ -DprojectVersion=1.0.0-SNAPSHOT -Dextensions=kogito-quarkus在 Spring Boot 上
$ mvn archetype:generate \ -DarchetypeGroupId=org.kie.kogito \ -DarchetypeArtifactId=kogito-spring-boot-archetype \ -DgroupId=org.acme -DartifactId=sample-kogito \ -DarchetypeVersion=1.11.0.Final \ -Dversion=1.0-SNAPSHOT此命令生成
sample-kogitoMaven 项目,并导入扩展以准备应用程序以进行业务自动化。如果要为项目启用 PMML 执行,请将以下依赖项添加到 Maven 项目中的
pom.xml文件中,该文件包含您的红帽构建 Kogito 微服务:启用 PMML 执行的依赖项
<dependency> <groupId>org.kie.kogito</groupId> <artifactId>kogito-pmml</artifactId> </dependency> <dependency> <groupId>org.jpmml</groupId> <artifactId>pmml-model</artifactId> </dependency>在 Red Hat build of Quarkus 上,如果您计划在 OpenShift 上运行应用程序,还必须为 存活度和就绪度探测 导入
smallrye-health扩展,如下例所示:Red Hat build of Quarkus 应用程序在 OpenShift 中小型健康扩展
$ mvn quarkus:add-extension -Dextensions="smallrye-health"此命令在红帽构建的 Quarkus 上的 Red Hat Process Automation Manager 项目的
pom.xml文件中生成以下依赖项:Red Hat build of Quarkus applications on OpenShift
<dependency> <groupId>io.quarkus</groupId> <artifactId>quarkus-smallrye-health</artifactId> </dependency>- 在 VS Code IDE 中打开或导入项目,以查看其内容。
3.1. 为红帽构建 Kogito 微服务创建自定义 Spring Boot 项目 复制链接链接已复制到粘贴板!
您可以使用 Spring Boot archetype 为 Kogito 微服务的红帽构建创建自定义 Maven 项目。Spring Boot archetype 可让您在项目中添加 Spring Boot 启动器或附加组件。
Spring Boot Starter 是项目的一站式描述符,需要红帽构建的 Kogito 提供的业务自动化引擎。Spring Boot Starters 包括决策、规则和预测。
如果您的项目包含所有资产,并且希望快速开始使用 Kogito 的红帽构建,您可以使用 kogito-spring-boot-starter 启动程序。对于更精细的方法,您可以使用特定的初学者,如 kogito-decisions-spring-boot-starter 做出决策,或是初学者的组合。
红帽构建的 Kogito 支持以下 Spring Boot 启动器:
- 决策 Spring Boot Starter
为 Spring Boot 项目提供 DMN 支持的入门程序。以下是在项目中添加 Spring 引导启动程序的示例:
<dependencies> <dependency> <groupId>org.kie.kogito</groupId> <artifactId>kogito-decisions-spring-boot-starter</artifactId> </dependency> </dependencies>- 预测 Spring Boot 启动程序
为 Spring Boot 项目提供 PMML 支持的入门程序。以下是在项目中添加预测 Spring 引导启动程序的示例:
<dependencies> <dependency> <groupId>org.kie.kogito</groupId> <artifactId>kogito-predictions-spring-boot-starter</artifactId> </dependency> </dependencies>- 规则 Spring Boot 启动程序
为 Spring Boot 项目提供 DRL 支持的入门程序。以下是在项目中添加规则 Spring 引导启动程序的示例:
<dependencies> <dependency> <groupId>org.kie.kogito</groupId> <artifactId>kogito-rules-spring-boot-starter</artifactId> </dependency> </dependencies>
流程
- 在命令终端中,导航到要存储新项目的本地文件夹。
输入以下命令使用
starters或addons属性生成项目之一:要使用
starters属性生成项目,请输入以下命令:$ mvn archetype:generate \ -DarchetypeGroupId=org.kie.kogito \ -DarchetypeArtifactId=kogito-springboot-archetype \ -DgroupId=org.acme -DartifactId=sample-kogito \ -DarchetypeVersion=1.11.0.Final \ -Dversion=1.0-SNAPSHOT -Dstarters=decisions新项目包含运行决策微服务所需的依赖项。您可以使用以逗号分隔的列表组合多个 Spring Boot 启动器,如
starters=decisions,rules。要使用
addons属性生成包含 Prometheus 监控的项目,请输入以下命令:$ mvn archetype:generate \ -DarchetypeGroupId=org.kie.kogito \ -DarchetypeArtifactId=kogito-springboot-archetype \ -DgroupId=org.acme -DartifactId=sample-kogito \ -DarchetypeVersion=1.11.0.Final \ -Dversion=1.0-SNAPSHOT -Dstarters=descisions -Daddons=monitoring-prometheus,persistence-infinispan注意当您将附加组件传递给属性时,附加组件名称不需要
kogito-addons-springboot前缀。另外,您可以组合附加组件和初学者属性来自定义项目。
- 在 IDE 中打开或导入项目,以查看其内容。