<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         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>

    <name>geminis-dependency-version</name>
    <description>geminis-dependency-version</description>
    <url>scm:git:git@github.com:allennet/geminis-dependency-version.git</url>

    <groupId>cn.geminis.dependency</groupId>
    <artifactId>geminis-dependency-version</artifactId>
    <version>1.0.0</version>
    <packaging>pom</packaging>

    <scm>
        <connection>scm:git:git@github.com:allennet/geminis-dependency-version.git</connection>
        <developerConnection>scm:git:git@github.com:allennet/geminis-dependency-version.git</developerConnection>
        <url>scm:git:git@github.com:allennet/geminis-dependency-version.git</url>
    </scm>

    <developers>
        <developer>
            <name>allen</name>
            <email>pudding.net@live.cn</email>
        </developer>
    </developers>

    <licenses>
        <license>
            <name>The Apache Software License, Version 2.0</name>
            <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
        </license>
    </licenses>

    <properties>
        <!--注意版本匹配，使用cloud对应的boot版本-->
        <spring-cloud-version>Hoxton.SR7</spring-cloud-version>
        <spring-boot-version>2.3.2.RELEASE</spring-boot-version>
        <!--        <spring-cloud-version>2020.0.0-M4</spring-cloud-version>-->
        <!--        <spring-boot-version>2.3.4.RELEASE</spring-boot-version>-->
        <spring-cloud-alibaba-version>2.2.1.RELEASE</spring-cloud-alibaba-version>
        <!--        <spring-security-oauth2-version>2.1.2.RELEASE</spring-security-oauth2-version>-->

        <h2-version>1.4.199</h2-version>
        <mysql-version>8.0.17</mysql-version>

        <xstream-version>1.4.11.1</xstream-version>
        <graphql-java-version>14.0</graphql-java-version>
        <bouncycastle-version>1.64</bouncycastle-version>

        <geminis-core-version>1.3.0</geminis-core-version>
        <geminis-crypto-version>1.4.0</geminis-crypto-version>
        <geminis-data-jpa-version>1.1.0</geminis-data-jpa-version>
        <geminis-web-version>1.1.0</geminis-web-version>
        <geminis-resources-core-version>1.1.0</geminis-resources-core-version>
    </properties>

    <repositories>
        <!--        <repository>-->
        <!--            <id>central</id>-->
        <!--            <name>Central Repository</name>-->
        <!--            <url>https://repo.maven.apache.org/maven2</url>-->
        <!--        </repository>-->
        <!--        <repository>-->
        <!--            <id>spring-snapshots</id>-->
        <!--            <url>http://repo.spring.io/snapshot</url>-->
        <!--            <snapshots>-->
        <!--                <enabled>true</enabled>-->
        <!--            </snapshots>-->
        <!--        </repository>-->
        <!--        <repository>-->
        <!--            <id>spring-milestone</id>-->
        <!--            <name>Spring Milestone Repository</name>-->
        <!--            <url>https://repo.spring.io/milestone</url>-->
        <!--            <snapshots>-->
        <!--                <enabled>true</enabled>-->
        <!--            </snapshots>-->
        <!--        </repository>-->
    </repositories>

    <dependencyManagement>
        <dependencies>
            <!-- Spring -->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>${spring-cloud-version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-parent</artifactId>
                <version>${spring-boot-version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-alibaba-dependencies</artifactId>
                <version>${spring-cloud-alibaba-version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <!--            <dependency>-->
            <!--                <groupId>org.springframework.security.oauth</groupId>-->
            <!--                <artifactId>spring-security-oauth2</artifactId>-->
            <!--                <version>${spring-security-oauth2-version}</version>-->
            <!--            </dependency>-->

            <!-- Database -->
            <dependency>
                <groupId>com.h2database</groupId>
                <artifactId>h2</artifactId>
                <version>${h2-version}</version>
                <scope>runtime</scope>
            </dependency>
            <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
                <version>${mysql-version}</version>
                <scope>runtime</scope>
            </dependency>

            <!-- Other -->
            <dependency>
                <groupId>com.thoughtworks.xstream</groupId>
                <artifactId>xstream</artifactId>
                <version>${xstream-version}</version>
            </dependency>
            <dependency>
                <groupId>com.graphql-java</groupId>
                <artifactId>graphql-java</artifactId>
                <version>${graphql-java-version}</version>
            </dependency>
            <dependency>
                <groupId>org.bouncycastle</groupId>
                <artifactId>bcpkix-jdk15on</artifactId>
                <version>${bouncycastle-version}</version>
            </dependency>

            <!-- Gemini -->
            <dependency>
                <groupId>cn.geminis</groupId>
                <artifactId>geminis-core</artifactId>
                <version>${geminis-core-version}</version>
            </dependency>
            <dependency>
                <groupId>cn.geminis</groupId>
                <artifactId>geminis-data-jpa</artifactId>
                <version>${geminis-data-jpa-version}</version>
            </dependency>
            <dependency>
                <groupId>cn.geminis</groupId>
                <artifactId>geminis-web</artifactId>
                <version>${geminis-web-version}</version>
            </dependency>
            <dependency>
                <groupId>cn.geminis.crypto</groupId>
                <artifactId>geminis-crypto</artifactId>
                <version>${geminis-crypto-version}</version>
            </dependency>
            <dependency>
                <groupId>cn.geminis.resources</groupId>
                <artifactId>geminis-resources-core</artifactId>
                <version>${geminis-resources-core-version}</version>
            </dependency>

        </dependencies>
    </dependencyManagement>

    <build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-maven-plugin</artifactId>
                    <version>${spring-boot-version}</version>
                    <executions>
                        <execution>
                            <goals>
                                <goal>repackage</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
            </plugins>
        </pluginManagement>
    </build>

    <profiles>
        <profile>
            <id>release</id>
            <activation>
                <property>
                    <name>performRelease</name>
                    <value>true</value>
                </property>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-gpg-plugin</artifactId>
                        <version>1.6</version>
                        <executions>
                            <execution>
                                <phase>verify</phase>
                                <goals>
                                    <goal>sign</goal>
                                </goals>
                                <configuration>
                                    <gpgArguments>
                                        <arg>--pinentry-mode</arg>
                                        <arg>loopback</arg>
                                    </gpgArguments>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
    </profiles>

    <distributionManagement>
        <snapshotRepository>
            <id>mavenCenter</id>
            <url>https://oss.sonatype.org/content/repositories/snapshots/</url>
        </snapshotRepository>
        <repository>
            <id>mavenCenter</id>
            <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
        </repository>
    </distributionManagement>

</project>

