第 3 章 为红帽构建 Kogito 微服务创建 Maven 项目
在开始开发 Red Hat build of 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 执行,请在包含 Red Hat build of Kogito 微服务的 Maven 项目的
pom.xml文件中添加以下依赖项:启用 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扩展,如下例所示:用于 OpenShift 上红帽构建的 Quarkus 应用程序的 SmallRye Health 扩展
$ mvn quarkus:add-extension -Dextensions="smallrye-health"此命令在 Red Hat Process Automation Manager 项目的
pom.xml文件中生成以下依赖项:在 OpenShift 中红帽构建的 Quarkus 应用程序的 SmallRye Health 依赖项
<dependency> <groupId>io.quarkus</groupId> <artifactId>quarkus-smallrye-health</artifactId> </dependency>- 在 VS Code IDE 中打开或导入项目,以查看内容。
3.1. 为 Red Hat build of Kogito 微服务创建自定义 Spring Boot 项目 复制链接链接已复制到粘贴板!
您可以使用 Spring Boot archetype 为 Red Hat build of Kogito 微服务创建自定义 Maven 项目。Spring Boot archetype 可让您将 Spring Boot starters 或 add-ons 添加到项目中。
Spring Boot starter 是项目的一体化描述符,需要由红帽构建 Kogito 提供的业务自动化引擎。Spring Boot starters 包括决策、规则和预测。
当项目包含所有资产且您希望使用 Red Hat build of Kogito 开始时,您可以使用 kogito-spring-boot-starter 启动程序。对于更细致的方法,您可以使用特定的初学者,如 kogito-decisions-spring-boot-starter 进行决策,或组合 starters。
Red Hat build of Kogito 支持以下 Spring Boot starters:
- 决策 Spring Boot starter
为 Spring Boot 项目提供 DMN 支持的入门者。以下是在项目中添加一个决策 Spring boot starter 的示例:
<dependencies> <dependency> <groupId>org.kie.kogito</groupId> <artifactId>kogito-decisions-spring-boot-starter</artifactId> </dependency> </dependencies>- 预测 Spring Boot starter
为 Spring Boot 项目提供 PMML 支持的入门者。以下是向项目添加 insights Spring boot starter 的示例:
<dependencies> <dependency> <groupId>org.kie.kogito</groupId> <artifactId>kogito-predictions-spring-boot-starter</artifactId> </dependency> </dependencies>- 规则 Spring Boot starter
为 Spring Boot 项目提供 DRL 支持入门。以下是在项目中添加规则 Spring boot starter 的示例:
<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,如
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前缀。另外,您还可以组合附加组件和starters属性来自定义项目。
- 打开或导入 IDE 中的项目以查看内容。