第 3 章 为红帽构建 Kogito 微服务创建 Maven 项目


在开始开发 Red Hat build of Kogito 微服务之前,您需要创建一个 Maven 项目,在其中构建资产以及您的应用程序的任何其他相关资源。

流程

  1. 在命令终端中,导航到要存储新项目的本地文件夹。
  2. 输入以下命令在定义的文件夹中生成项目:

    在 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-kogito Maven 项目,并导入扩展以获取所有需要的依赖关系和配置,以便为您的应用程序做好业务自动化准备。

    如果要启用项目的 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>

  3. 在 VS Code IDE 中打开或导入项目,以查看内容。

您可以使用 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>

流程

  1. 在命令终端中,导航到要存储新项目的本地文件夹。
  2. 输入以下命令使用 startersaddons 属性来生成项目:

    • 要使用 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 属性来自定义项目。

  3. 打开或导入 IDE 中的项目以查看内容。
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat
返回顶部