<?xml version="1.0" encoding="UTF-8"?>
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns="http://maven.apache.org/POM/4.0.0"
         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>io.gitee.ixtf</groupId>
    <artifactId>bom</artifactId>
    <version>4.6.0</version>
    <packaging>pom</packaging>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>21</maven.compiler.source>
        <maven.compiler.target>21</maven.compiler.target>
        <hutoolVersion>5.8.46</hutoolVersion>
        <vertxVersion>4.5.28</vertxVersion>
        <akkaVersion>3.15.19</akkaVersion>
        <ixtfVersion>3.4.0</ixtfVersion>
        <microprofileVersion>7.1</microprofileVersion>
        <micrometerVersion>1.12.13</micrometerVersion>
        <!-- 等待vertx升级 -->
        <!--        <micrometerVersion>1.16.1</micrometerVersion>-->
        <opentelemetryVersion>1.63.0</opentelemetryVersion>
        <slf4jVersion>2.0.18</slf4jVersion>
        <logbackVersion>1.5.34</logbackVersion>
        <jacksonVersion>2.22.0</jacksonVersion>
        <cloudeventsVersion>4.1.1</cloudeventsVersion>
        <kotlinVersion>2.4.0</kotlinVersion>
        <coroutinesVersion>1.11.0</coroutinesVersion>
        <reactorVersion>2025.0.6</reactorVersion>
        <guiceVersion>7.0.0</guiceVersion>
        <keycloakVersion>26.0.9</keycloakVersion>
        <droolsVersion>10.2.0</droolsVersion>
        <luceneVersion>10.4.0</luceneVersion>
        <poiVersion>5.5.1</poiVersion>
        <rsocketVersion>1.1.5</rsocketVersion>
        <mongodbVersion>5.8.0</mongodbVersion>
        <grpcVersion>1.82.0</grpcVersion>
        <protobufVersion>4.35.1</protobufVersion>
    </properties>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>io.gitee.ixtf</groupId>
                <artifactId>core</artifactId>
                <version>${ixtfVersion}</version>
            </dependency>
            <dependency>
                <groupId>io.gitee.ixtf</groupId>
                <artifactId>guice</artifactId>
                <version>${ixtfVersion}</version>
            </dependency>
            <dependency>
                <groupId>io.gitee.ixtf</groupId>
                <artifactId>vertx</artifactId>
                <version>${ixtfVersion}</version>
            </dependency>
            <dependency>
                <groupId>io.gitee.ixtf</groupId>
                <artifactId>vertx-rabbitmq</artifactId>
                <version>${ixtfVersion}</version>
            </dependency>
            <dependency>
                <groupId>io.gitee.ixtf</groupId>
                <artifactId>cqrs</artifactId>
                <version>${ixtfVersion}</version>
            </dependency>
            <dependency>
                <groupId>io.gitee.ixtf</groupId>
                <artifactId>rsocket</artifactId>
                <version>${ixtfVersion}</version>
            </dependency>
            <dependency>
                <groupId>io.gitee.ixtf</groupId>
                <artifactId>mongo</artifactId>
                <version>${ixtfVersion}</version>
            </dependency>
            <dependency>
                <groupId>io.gitee.ixtf</groupId>
                <artifactId>lucene</artifactId>
                <version>${ixtfVersion}</version>
            </dependency>
            <dependency>
                <groupId>io.gitee.ixtf</groupId>
                <artifactId>poi</artifactId>
                <version>${ixtfVersion}</version>
            </dependency>
            <dependency>
                <groupId>io.gitee.ixtf</groupId>
                <artifactId>pinyin</artifactId>
                <version>${ixtfVersion}</version>
            </dependency>
            <dependency>
                <groupId>io.gitee.ixtf</groupId>
                <artifactId>oss</artifactId>
                <version>${ixtfVersion}</version>
            </dependency>

            <dependency>
                <groupId>io.kurrent</groupId>
                <artifactId>kurrentdb-client</artifactId>
                <version>1.2.0</version>
            </dependency>
            <dependency>
                <groupId>io.minio</groupId>
                <artifactId>minio</artifactId>
                <version>8.6.0</version>
                <!--                <version>9.0.3</version>-->
            </dependency>
            <dependency>
                <groupId>io.projectreactor.rabbitmq</groupId>
                <artifactId>reactor-rabbitmq</artifactId>
                <version>1.5.6</version>
            </dependency>
            <dependency>
                <groupId>org.eclipse.microprofile.graphql</groupId>
                <artifactId>microprofile-graphql-api</artifactId>
                <version>2.0</version>
            </dependency>
            <dependency>
                <groupId>org.hibernate.validator</groupId>
                <artifactId>hibernate-validator</artifactId>
                <version>9.1.0.Final</version>
            </dependency>
            <dependency>
                <groupId>com.github.ben-manes.caffeine</groupId>
                <artifactId>caffeine</artifactId>
                <version>3.2.4</version>
            </dependency>
            <dependency>
                <groupId>com.sksamuel.aedile</groupId>
                <artifactId>aedile-core</artifactId>
                <version>3.0.4</version>
            </dependency>
            <dependency>
                <groupId>io.github.classgraph</groupId>
                <artifactId>classgraph</artifactId>
                <version>4.8.184</version>
            </dependency>
            <dependency>
                <groupId>org.bouncycastle</groupId>
                <artifactId>bcprov-jdk18on</artifactId>
                <version>1.84</version>
            </dependency>
            <dependency>
                <groupId>org.locationtech.jts</groupId>
                <artifactId>jts-core</artifactId>
                <version>1.20.0</version>
            </dependency>
            <dependency>
                <groupId>com.graphql-java</groupId>
                <artifactId>graphql-java</artifactId>
                <version>24.3</version>
            </dependency>
            <dependency>
                <groupId>com.graphql-java</groupId>
                <artifactId>graphql-java-extended-scalars</artifactId>
                <version>24.0</version>
            </dependency>
            <dependency>
                <groupId>com.graphql-java</groupId>
                <artifactId>graphql-java-extended-validation</artifactId>
                <version>24.0</version>
            </dependency>
            <dependency>
                <groupId>com.graphql-java</groupId>
                <artifactId>java-dataloader</artifactId>
                <version>6.0.0</version>
            </dependency>
            <dependency>
                <groupId>net.bytebuddy</groupId>
                <artifactId>byte-buddy</artifactId>
                <version>1.18.10</version>
            </dependency>
            <dependency>
                <groupId>com.google.guava</groupId>
                <artifactId>guava</artifactId>
                <version>33.6.0-jre</version>
            </dependency>
            <dependency>
                <groupId>com.google.zxing</groupId>
                <artifactId>javase</artifactId>
                <version>3.5.4</version>
            </dependency>

            <dependency>
                <groupId>com.google.inject</groupId>
                <artifactId>guice</artifactId>
                <version>${guiceVersion}</version>
            </dependency>
            <dependency>
                <groupId>org.keycloak</groupId>
                <artifactId>keycloak-admin-client</artifactId>
                <version>${keycloakVersion}</version>
            </dependency>
            <dependency>
                <groupId>org.lionsoul</groupId>
                <artifactId>jcseg-analyzer</artifactId>
                <version>2.6.3</version>
            </dependency>
            <dependency>
                <groupId>org.apache.lucene</groupId>
                <artifactId>lucene-backward-codecs</artifactId>
                <version>${luceneVersion}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.lucene</groupId>
                <artifactId>lucene-expressions</artifactId>
                <version>${luceneVersion}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.lucene</groupId>
                <artifactId>lucene-facet</artifactId>
                <version>${luceneVersion}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.lucene</groupId>
                <artifactId>lucene-join</artifactId>
                <version>${luceneVersion}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.lucene</groupId>
                <artifactId>lucene-grouping</artifactId>
                <version>${luceneVersion}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.lucene</groupId>
                <artifactId>lucene-queries</artifactId>
                <version>${luceneVersion}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.lucene</groupId>
                <artifactId>lucene-queryparser</artifactId>
                <version>${luceneVersion}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.lucene</groupId>
                <artifactId>lucene-demo</artifactId>
                <version>${luceneVersion}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.poi</groupId>
                <artifactId>poi</artifactId>
                <version>${poiVersion}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.poi</groupId>
                <artifactId>poi-ooxml</artifactId>
                <version>${poiVersion}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.poi</groupId>
                <artifactId>poi-scratchpad</artifactId>
                <version>${poiVersion}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.avro</groupId>
                <artifactId>avro</artifactId>
                <version>1.12.1</version>
            </dependency>
            <dependency>
                <groupId>org.apache.avro</groupId>
                <artifactId>avro-ipc</artifactId>
                <version>1.12.1</version>
            </dependency>
            <dependency>
                <groupId>com.github.luben</groupId>
                <artifactId>zstd-jni</artifactId>
                <version>1.5.7-10</version>
            </dependency>

            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-parent</artifactId>
                <version>${slf4jVersion}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>ch.qos.logback</groupId>
                <artifactId>logback-parent</artifactId>
                <version>${logbackVersion}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>cn.hutool</groupId>
                <artifactId>hutool-bom</artifactId>
                <version>${hutoolVersion}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>jakarta.platform</groupId>
                <artifactId>jakarta.jakartaee-bom</artifactId>
                <version>11.0.0</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>com.fasterxml.jackson</groupId>
                <artifactId>jackson-bom</artifactId>
                <version>${jacksonVersion}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>io.cloudevents</groupId>
                <artifactId>cloudevents-bom</artifactId>
                <version>${cloudeventsVersion}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>io.projectreactor</groupId>
                <artifactId>reactor-bom</artifactId>
                <version>${reactorVersion}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>io.vertx</groupId>
                <artifactId>vertx-stack-depchain</artifactId>
                <version>${vertxVersion}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>io.akka</groupId>
                <artifactId>akka-javasdk-parent</artifactId>
                <version>${akkaVersion}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <!--            <dependency>-->
            <!--                <groupId>com.typesafe.akka</groupId>-->
            <!--                <artifactId>akka-bom_3</artifactId>-->
            <!--                <version>2.10.0</version>-->
            <!--                <type>pom</type>-->
            <!--                <scope>import</scope>-->
            <!--            </dependency>-->
            <dependency>
                <groupId>org.jetbrains.kotlin</groupId>
                <artifactId>kotlin-bom</artifactId>
                <version>${kotlinVersion}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>org.jetbrains.kotlinx</groupId>
                <artifactId>kotlinx-coroutines-bom</artifactId>
                <version>${coroutinesVersion}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>org.eclipse.microprofile</groupId>
                <artifactId>microprofile</artifactId>
                <version>${microprofileVersion}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>io.smallrye.config</groupId>
                <artifactId>smallrye-config</artifactId>
                <version>3.8.3</version>
            </dependency>
            <dependency>
                <groupId>io.rsocket</groupId>
                <artifactId>rsocket-bom</artifactId>
                <version>${rsocketVersion}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>org.mongodb</groupId>
                <artifactId>mongodb-driver-bom</artifactId>
                <version>${mongodbVersion}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>org.drools</groupId>
                <artifactId>drools-bom</artifactId>
                <version>${droolsVersion}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>io.opentelemetry</groupId>
                <artifactId>opentelemetry-bom</artifactId>
                <version>${opentelemetryVersion}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>io.micrometer</groupId>
                <artifactId>micrometer-bom</artifactId>
                <version>${micrometerVersion}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>io.grpc</groupId>
                <artifactId>grpc-bom</artifactId>
                <version>${grpcVersion}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>com.google.protobuf</groupId>
                <artifactId>protobuf-bom</artifactId>
                <version>${protobufVersion}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>com.google.protobuf</groupId>
                <artifactId>protoc</artifactId>
                <version>${protobufVersion}</version>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <repositories>
        <repository>
            <id>jitpack.io</id>
            <url>https://jitpack.io</url>
        </repository>
        <repository>
            <id>repo.akka.io</id>
            <url>https://repo.akka.io/CLDJGqcFkY_87rUicOqyzLdS-W80gXkygSnrkmyvF-WNVdyF/secure</url>
        </repository>
    </repositories>

    <name>ixtf-bom</name>
    <description>Bill of Materials for ixtf asynchronous ecosystem dependencies</description>
    <url>https://gitee.com/ixtf/bom</url>
    <licenses>
        <license>
            <name>The Apache Software License, Version 2.0</name>
            <url>https://www.apache.org/licenses/LICENSE-2.0.txt</url>
        </license>
    </licenses>

    <developers>
        <developer>
            <name>ixtf</name>
            <email>ixtf1984@gmail.com</email>
            <organization>ixtf</organization>
            <organizationUrl>https://gitee.com/ixtf</organizationUrl>
        </developer>
    </developers>

    <scm>
        <connection>scm:git:git://gitee.com/ixtf/bom.git</connection>
        <developerConnection>scm:git:ssh://gitee.com/ixtf/bom.git</developerConnection>
        <url>https://gitee.com/ixtf/bom</url>
    </scm>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-gpg-plugin</artifactId>
                <version>3.2.8</version>
                <executions>
                    <execution>
                        <id>sign-artifacts</id>
                        <phase>verify</phase>
                        <goals>
                            <goal>sign</goal>
                        </goals>
                        <configuration>
                            <keyname>C0D70855B661A3B2A56750C9EB4F3B4A7001E2C4</keyname>
                            <gpgArguments>
                                <arg>--pinentry-mode</arg>
                                <arg>loopback</arg>
                            </gpgArguments>
                            <passphraseServerId>gpg</passphraseServerId>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

            <plugin>
                <groupId>org.sonatype.central</groupId>
                <artifactId>central-publishing-maven-plugin</artifactId>
                <version>0.9.0</version>
                <extensions>true</extensions>
                <configuration>
                    <publishingServerId>central</publishingServerId>
                    <autoPublish>true</autoPublish>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>
