<?xml version="1.0" encoding="UTF-8"?>

<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>

  <groupId>com.xkcoding</groupId>
  <artifactId>spring-boot-demo</artifactId>
  <version>1.0.0-SNAPSHOT</version>

  <modules>
    <module>common-tools</module>
    <module>demo-base</module>
    <module>demo-log</module>
    <module>demo-template</module>
    <module>demo-orm</module>
    <module>demo-multi-datasource</module>
    <module>demo-cache</module>
    <module>demo-nosql</module>
    <module>demo-mq</module>
    <module>demo-task</module>
    <module>demo-websocket</module>
    <module>demo-auth</module>
    <module>demo-api-doc</module>
    <module>demo-monitor</module>
    <module>demo-rate-limit</module>
    <module>demo-distributed-lock</module>
    <module>demo-workflow</module>
    <module>demo-package</module>
    <module>demo-others</module>
    <!--    <module>demo-template-freemarker</module>-->
    <!--    <module>demo-template-thymeleaf</module>-->
    <!--    <module>demo-template-beetl</module>-->
    <!--    <module>demo-template-enjoy</module>-->
    <!--    <module>demo-orm-jdbctemplate</module>-->
    <!--    <module>demo-orm-jpa</module>-->
    <!--    <module>demo-orm-mybatis</module>-->
    <!--    <module>demo-orm-mybatis-mapper-page</module>-->
    <!--    <module>demo-orm-mybatis-plus</module>-->
    <!--    <module>demo-orm-beetlsql</module>-->
    <!--    <module>demo-upload</module>-->
    <!--    <module>demo-cache-redis</module>-->
    <!--    <module>demo-cache-ehcache</module>-->
    <!--    <module>demo-task</module>-->
    <!--    <module>demo-task-quartz</module>-->
    <!--    <module>demo-task-xxl-job</module>-->
    <!--    <module>demo-swagger</module>-->
    <!--    <module>demo-swagger-beauty</module>-->
    <!--    <module>demo-rbac-security</module>-->
    <!--    <module>demo-rbac-shiro</module>-->
    <!--    <module>demo-session</module>-->
    <!--    <module>demo-oauth</module>-->
    <!--    <module>demo-social</module>-->
    <!--    <module>demo-zookeeper</module>-->
    <!--    <module>demo-mq-rabbitmq</module>-->
    <!--    <module>demo-mq-rocketmq</module>-->
    <!--    <module>demo-mq-kafka</module>-->
    <!--    <module>demo-websocket</module>-->
    <!--    <module>demo-websocket-socketio</module>-->
    <!--    <module>demo-ureport2</module>-->
    <!--    <module>demo-uflo</module>-->
    <!--    <module>demo-urule</module>-->
    <!--    <module>demo-activiti</module>-->
    <!--    <module>demo-dubbo</module>-->
    <!--    <module>demo-elasticsearch</module>-->
    <!--    <module>demo-mongodb</module>-->
    <!--    <module>demo-neo4j</module>-->
    <!--    <module>demo-multi-datasource-jpa</module>-->
    <!--    <module>demo-multi-datasource-mybatis</module>-->
    <!--    <module>demo-sharding-jdbc</module>-->
    <!--    <module>demo-tio</module>-->
    <!--    <module>demo-codegen</module>-->
    <!--    <module>demo-graylog</module>-->
    <!--    <module>demo-ldap</module>-->
    <!--    <module>demo-dynamic-datasource</module>-->
    <!--    <module>demo-ratelimit-guava</module>-->
    <!--    <module>demo-ratelimit-redis</module>-->
    <!--    <module>demo-elasticsearch-rest-high-level-client</module>-->
    <!--    <module>demo-flyway</module>-->
    <!--    <module>demo-pay</module>-->
  </modules>
  <packaging>pom</packaging>

  <name>spring-boot-demo</name>
  <url>https://github.com/xkcoding/spring-boot-demo</url>

  <properties>
    <java.version>17</java.version>
    <maven.compiler.source>17</maven.compiler.source>
    <maven.compiler.target>17</maven.compiler.target>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

    <spring.boot.version>3.0.0-M4</spring.boot.version>
  </properties>

  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-dependencies</artifactId>
        <version>${spring.boot.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <dependency>
        <groupId>com.xkcoding</groupId>
        <artifactId>common-tools</artifactId>
        <version>1.0.0-SNAPSHOT</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>

  <!-- (you do not need this if you are using a .RELEASE version) -->
  <repositories>
    <repository>
      <id>spring-snapshots</id>
      <url>https://repo.spring.io/snapshot</url>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
    </repository>
    <repository>
      <id>spring-milestones</id>
      <url>https://repo.spring.io/milestone</url>
    </repository>
  </repositories>
  <pluginRepositories>
    <pluginRepository>
      <id>spring-snapshots</id>
      <url>https://repo.spring.io/snapshot</url>
    </pluginRepository>
    <pluginRepository>
      <id>spring-milestones</id>
      <url>https://repo.spring.io/milestone</url>
    </pluginRepository>
  </pluginRepositories>
</project>
