1.3. 创建并验证 Maven 项目


要使 Quarkus 安全能够将您的安全源映射到 Jakarta Persistence 实体,请确保本教程中的 Maven 项目包含 quarkus-security-jpa 扩展。

注意

带有 Panache 的 Hibernate ORM 用于存储您的用户身份,但您也可以使用带有 quarkus-security-jpa 扩展的 Hibernate ORM

您还必须添加您首选的数据库连接器库。本例教程中的说明对身份存储使用 PostgreSQL 数据库。

1.3.1. 创建 Maven 项目

您可以使用 Security Jakarta Persistence 扩展创建新的 Maven 项目,或将扩展添加到现有 Maven 项目中。您可以使用 Hibernate ORM 或 Hibernate Reactive。

1.3.1.1. 创建新的 Maven 项目

  • 要使用 Jakarta Persistence 扩展创建新的 Maven 项目,请完成以下步骤之一:

    • 要使用 Hibernate ORM 创建 Maven 项目,请使用以下命令:
  • 使用 Quarkus CLI:

    quarkus create app org.acme:security-jpa-quickstart \
        --extension='security-jpa,jdbc-postgresql,rest,hibernate-orm-panache' \
        --no-code
    cd security-jpa-quickstart

    要创建 Gradle 项目,请添加-- gradle or --gradle-kotlin-dsl 选项。

    有关如何安装和使用 Quarkus CLI 的更多信息,请参阅 Quarkus CLI 指南。

  • 使用 Maven:

    mvn com.redhat.quarkus.platform:quarkus-maven-plugin:3.15.1:create \
        -DprojectGroupId=org.acme \
        -DprojectArtifactId=security-jpa-quickstart \
        -Dextensions='security-jpa,jdbc-postgresql,rest,hibernate-orm-panache' \
        -DnoCode
    cd security-jpa-quickstart

    要创建 Gradle 项目,请添加 -DbuildTool=gradle or -DbuildTool=gradle-kotlin-dsl 选项。

对于 Windows 用户:

  • 如果使用 cmd,(不要使用反向斜杠 \ 并将所有内容放在同一行中)
  • 如果使用 Powershell,则双引号中的 wrap -D 参数,如 "-DprojectArtifactId=security-jpa-quickstart"

1.3.1.2. 在现有项目中添加 Jakarta Persistence 扩展

  • 要将 Jakarta Persistence 扩展添加到现有 Maven 项目中,请完成以下步骤之一:

    • 要将 Security Jakarta Persistence 扩展添加到带有 Hibernate ORM 的现有 Maven 项目中,请从项目基础目录运行以下命令:

      • 使用 Quarkus CLI:

        quarkus extension add security-jpa
      • 使用 Maven:

        ./mvnw quarkus:add-extension -Dextensions='security-jpa'
      • 使用 Gradle:

        ./gradlew addExtension --extensions='security-jpa'

1.3.2. 验证 quarkus-security-jpa 依赖项

运行上述任何一个命令来创建 Maven 项目后,请验证 quarkus-security-jpa 依赖项是否已添加到项目构建 XML 文件中。

  • 要验证 quarkus-security-jpa 扩展,请检查以下配置:

    • 使用 Maven:

      <dependency>
          <groupId>io.quarkus</groupId>
          <artifactId>quarkus-security-jpa</artifactId>
      </dependency>
    • 使用 Gradle:

      implementation("io.quarkus:quarkus-security-jpa")
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.