springboot中maven文件pom.xml的<resource>下的<includes>和<excludes>

本文详细讲解了Maven中filtering标签如何扩大属性替换范围,以及includes/excludes标签如何用于资源过滤。重点阐述了在Spring Boot项目中的使用注意事项,包括配置资源管理和占位符替换规则。

      filtering标签和includes,excludes标签都是resource标签下的标签,它们经常出入成双。然而这两者根本就是截然不同的。

      filtering用于扩大范围,什么范围呢?maven默认只会替换pom文件中的占位符属性,不会触碰resources下相关文件的.但filtering=true了,就可以触碰了,触碰的效果就是能替换resources下指定文件的占位符属性.

      默认情况下,maven打包时会包含resources下所有的文件.如果我们只想让指定的几个文件被打包,那就将这几个文件放在includes标签下处理;同理: 如果我们不想让这几个文件被打包,那就将这几个文件放在excludes标签下处理.

filtering的单独使用
  1. 没有使用filtering时:

      pom文件中定义在不同激活区的属性xxx

<profiles>
    <profile>
        <id>dev</id>
        <properties>
            <xxx>dev</xxx>
        </properties>
    </profile>
    <profile>
        <id>sit</id>
        <properties>
            <xxx>sit</xxx>
        </properties>
    </profile>
    <profile>
        <id>uat</id>
        <properties>
            <xxx>uat</xxx>
        </properties>
    </profile>
</profiles>

bootstrap.properties文件中定义的占位符属性${xxx}

spring.cloud.config.profile=${xxx}

使用-Psit打包后target下对应文件原封不动,没被替换:

spring.cloud.config.profile=${xxx}
  1. 使用filtering后:
<build>
    <resources>
        <resource>
            <directory>${project.basedir}/src/main/resources</directory>
            <filtering>true</filtering>
        </resource>
    </resources>
</build>

使用-Psit打包后target下对应文件中${}占位符被替换了:

spring.cloud.config.profile=sit

3.注意点:

  • 若单纯是maven项目,则可以使用${}占位符;
  • 若是springboot项目,则占位符需使用@xxx@,使用${}将失效.spring-boot-starter-parent为了防止与pom的占位符冲突,通过maven-resources-plugin将maven使用的资源占位符专门设置为:@ ,如下:
<properties>
   <java.version>1.6</java.version>
   <resource.delimiter>@</resource.delimiter> <!-- delimiter that doesn't clash with Spring ${} placeholders -->
   <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
   <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
   <maven.compiler.source>${java.version}</maven.compiler.source>
   <maven.compiler.target>${java.version}</maven.compiler.target>
</properties>

<plugin>
   <groupId>org.apache.maven.plugins</groupId>
   <artifactId>maven-resources-plugin</artifactId>
   <version>2.6</version>
   <configuration>
      <delimiters>
         <delimiter>${resource.delimiter}</delimiter>
      </delimiters>
      <useDefaultDelimiters>false</useDefaultDelimiters>
   </configuration>
</plugin>

可通过自己配置plugin覆盖此处配置:

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-resources-plugin</artifactId>
            <version>3.1.0</version>
            <configuration>
                <encoding>utf-8</encoding>
                <!-- 使Spring Boot支持${}占位符 -->
                <useDefaultDelimiters>true</useDefaultDelimiters>
            </configuration>
        </plugin>
    </plugins>
</build>
includes与excludes的使用

resources下文件有多个:
在这里插入图片描述

  • 如果使用了include
<build>
    <resources>
        <resource>
            <directory>${project.basedir}/src/main/resources</directory>
            <includes>
                <include>dev/</include>
            </includes>
        </resource>
    </resources>
</build>

则打包时进入target的是这样的:

  • 如果使用了exclude
<build>
    <resources>
        <resource>
            <directory>${project.basedir}/src/main/resources</directory>
            <excludes>
                <exclude>dev/</exclude>
            </excludes>
        </resource>
    </resources>
</build>

则打包时进入target的是这样的:
在这里插入图片描述

  • 如果同时使用了include和exclude,
<build>
    <resources>
        <resource>
            <directory>${project.basedir}/src/main/resources</directory>
            <includes>
                <include>dev/</include>
            </includes>
            <excludes>
                <exclude>dev/application-dev.*</exclude>
            </excludes>
        </resource>
    </resources>
</build>

则打包时是这样的:
在这里插入图片描述
一个排除,一个包含,可以各自单独使用,也可以混合使用,混合使用时,如果范围有交集,会被排除掉,通常用于过滤掉文件夹中的几个特殊文件

filtering与include,exclude混合使用

有三大作用:

  1. 排除资源-------使用excludes排除

  2. 包括资源, 替换属性-------使用include包含, 且使用filtering=true过滤

  3. 包括资源, 不替换属性-------使用include包含,且不使用filtering过滤

如果这样用:

<build>
    <resources>
        <resource>
            <directory>${project.basedir}/src/main/resources</directory>
        //资源过滤: 只保留dev文件夹下名字不是application-dev的文件
            <includes>
                <include>dev/</include>
            </includes>
            <excludes>
                <exclude>dev/application-dev.*</exclude>
            </excludes>
        //扩大属性替换范围: 替换资源过滤最终留下来的文件中的@xxx@占位符属性
            <filtering>true</filtering>
        </resource>
    </resources>
</build>

那么打包结果:
在这里插入图片描述
target文件夹下的application-dev2.properties文件的属性值变化:

spring.cloud.config.profile=${xxx}    ----->      spring.cloud.config.profile=sit

总结:

  1. filtering用于打包时扩大maven替换占位符属性的范围, true表示会替换所在resource标签确定的文件范围内的占位符属性

  2. include和exclude用于打包时资源过滤, 主要目的是把resources下不想要的文件排除掉,不打进包中.

  3. 它俩都是resource标签下的子标签, 一个用于过滤资源,一个用于是否替换占位符属性, 一般都是搭配使用, 但两者功能迥异.

扩展:

在springboot项目中,spring-boot-starter-parent存在以下代码:

<resources>
      <resource>
        <directory>${basedir}/src/main/resources</directory>
        <filtering>true</filtering>
        <includes>
          <include>**/application*.yml</include>
          <include>**/application*.yaml</include>
          <include>**/application*.properties</include>
        </includes>
      </resource>
      <resource>
        <directory>${basedir}/src/main/resources</directory>
        <excludes>
          <exclude>**/application*.yml</exclude>
          <exclude>**/application*.yml</exclude>
          <exclude>**/application*.properties</exclude>
        </excludes>
      </resource>
    </resources>

      其中第一段<resource>配置声明:在src/main/resources目录下,仅**/application*.yml、**/application*.yml、**/application*.properties文件是资源文件,参与打包过程;并且这些文件可以被替换占位符属性。
      第二段<resource>配置声明:同样在src/main/resources目录下,除**/application*.yml、**/application*.yml、**/application*.properties文件外的其他文件是资源文件,参与打包过程;并且这些文件不能被替换占位符属性。

注意:

  • 一个<resource>代表一个资源配置。不同的<resource>并无关系。前面提到的<include>和<exclude>在同一个<resource>中,即对同一个资源进行资源管理;而在spring-boot-starter-parent中,<include>和<exclude>在不同的<resource>,分别对各自<resource>进行管理。
  • 若在自己的pom中配置如下:
<resources>
            <resource>
                <directory>${basedir}/src/main/resources</directory>
                <filtering>true</filtering>
                <includes>
                    <include>**/application*.yml</include>
                </includes>
            </resource>
            <resource>
                <directory>${basedir}/src/main/resources</directory>
                <excludes>
                    <exclude>**/application*.yml</exclude>
                </excludes>
            </resource>
        </resources>

将会覆盖spring-boot-starter-parent中的代码,即spring-boot-starter-parent中的代码将失效。

<?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.xaiu</groupId> <artifactId>oss-delete-tool</artifactId> <version>1.0.0</version> <packaging>jar</packaging> <name>OSS Delete Tool</name> <description>OSS文件删除工具(兼容低版本环境)</description> <!-- 核心:统一环境配置 --> <properties> <!-- 强制JDK 1.8编译 --> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <mysql.version>5.1.49</mysql.version> <aliyun.oss.version>3.18.0</aliyun.oss.version> <!-- 新增:定义编译插件版本变量 --> <maven.compiler.plugin.version>3.8.1</maven.compiler.plugin.version> </properties> <dependencies> <!-- 阿里云OSS SDK --> <dependency> <groupId>com.aliyun.oss</groupId> <artifactId>aliyun-sdk-oss</artifactId> <version>${aliyun.oss.version}</version> <exclusions> <exclusion> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> </exclusion> </exclusions> </dependency> <!-- MySQL驱动(移除runtime,强制打入) --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>${mysql.version}</version> </dependency> <!-- 日志依赖(可选) --> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>1.7.36</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-simple</artifactId> <version>1.7.36</version> </dependency> </dependencies> <build> <finalName>oss-delete-tool</finalName> <!-- 确保配置文件被正确加载 --> <resources> <resource> <directory>src/main/resources</directory> <filtering>false</filtering> <includes> <include>**/*.properties</include> </includes> </resource> </resources> <plugins> <!-- 1. 编译插件:修复JDK路径版本变量 --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>${maven.compiler.plugin.version}</version> <configuration> <source>1.8</source> <target>1.8</target> <encoding>UTF-8</encoding> <fork>true</fork> <!-- 关键:修改为你Windows本地的javac路径(示例:D:\Java\jdk1.8.0_152\bin\javac.exe) --> <!-- 替换成你实际的JDK路径!!! --> <executable>D:\Java\jdk1.8.0_152\bin\javac.exe</executable> <!-- 移除多余的lombok注解处理器(你没用到lombok) --> </configuration> </plugin> <!-- 2. 打包插件:稳定版本,避免冲突 --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <version>3.2.4</version> <executions> <execution> <phase>package</phase> <goals> <goal>shade</goal> </goals> <configuration> <createDependencyReducedPom>false</createDependencyReducedPom> <artifactSet> <includes> <include>mysql:mysql-connector-java</include> <include>com.aliyun.oss:aliyun-sdk-oss</include> <include>org.slf4j:*</include> </includes> </artifactSet> <transformers> <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> <mainClass>com.xaiu.TestDeleteOSS</mainClass> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/services/java.sql.Driver</resource> </transformer> </transformers> <filters> <filter> <artifact>*:*</artifact> <excludes> <exclude>META-INF/*.SF</exclude> <exclude>META-INF/*.DSA</exclude> <exclude>META-INF/*.RSA</exclude> </excludes> </filter> </filters> </configuration> </execution> </executions> </plugin> <!-- 3. 清理插件:确保旧编译文件被删除 --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-clean-plugin</artifactId> <version>3.2.0</version> </plugin> </plugins> </build> </project>
最新发布
12-18
这是我的xml文件内容:<?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>org.example</groupId> <artifactId>spark-mongodb-processor</artifactId> <version>1.0-SNAPSHOT</version> <properties> <maven.compiler.source>8</maven.compiler.source> <maven.compiler.target>8</maven.compiler.target> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <!-- 统一版本配置 --> <spark.version>3.5.0</spark.version> <scala.binary.version>2.12</scala.binary.version> <scala.version>2.12.18</scala.version> <mongodb.connector.version>10.2.1</mongodb.connector.version> <mongodb.driver.version>4.11.1</mongodb.driver.version> <hadoop.version>3.3.6</hadoop.version> <log4j.version>2.20.0</log4j.version> <shade.plugin.version>3.5.1</shade.plugin.version> <scala.maven.plugin.version>4.8.1</scala.maven.plugin.version> <compiler.plugin.version>3.11.0</compiler.plugin.version> </properties> <dependencies> <!-- Spark 核心依赖 --> <dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-core_${scala.binary.version}</artifactId> <version>${spark.version}</version> <scope>provided</scope> </dependency> <!-- Spark SQL 依赖 --> <dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-sql_${scala.binary.version}</artifactId> <version>${spark.version}</version> <scope>provided</scope> </dependency> <!-- MongoDB Spark Connector --> <dependency> <groupId>org.mongodb.spark</groupId> <artifactId>mongo-spark-connector_${scala.binary.version}</artifactId> <version>${mongodb.connector.version}</version> <!-- 简化排除配置 --> <exclusions> <exclusion> <groupId>org.mongodb</groupId> <artifactId>*</artifactId> </exclusion> </exclusions> </dependency> <!-- MongoDB 驱动依赖 - 统一版本 --> <dependency> <groupId>org.mongodb</groupId> <artifactId>mongodb-driver-sync</artifactId> <version>${mongodb.driver.version}</version> </dependency> <!-- Scala 语言依赖 --> <dependency> <groupId>org.scala-lang</groupId> <artifactId>scala-library</artifactId> <version>${scala.version}</version> </dependency> <!-- Hadoop 客户端 - 更新到较新版本 --> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-client</artifactId> <version>${hadoop.version}</version> <scope>provided</scope> </dependency> <!-- 日志处理 --> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> <version>${log4j.version}</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <version>${log4j.version}</version> </dependency> <!-- 添加 SLF4J 桥接,避免日志冲突 --> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-slf4j-impl</artifactId> <version>${log4j.version}</version> </dependency> </dependencies> <build> <plugins> <!-- Scala 编译插件 --> <plugin> <groupId>net.alchim31.maven</groupId> <artifactId>scala-maven-plugin</artifactId> <version>${scala.maven.plugin.version}</version> <executions> <execution> <id>scala-compile-first</id> <phase>process-resources</phase> <goals> <goal>add-source</goal> <goal>compile</goal> </goals> </execution> <execution> <id>scala-test-compile</id> <phase>process-test-resources</phase> <goals> <goal>testCompile</goal> </goals> </execution> </executions> <configuration> <scalaVersion>${scala.version}</scalaVersion> <args> <arg>-target:jvm-1.8</arg> </args> </configuration> </plugin> <!-- Java 编译插件 --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>${compiler.plugin.version}</version> <configuration> <source>${maven.compiler.source}</source> <target>${maven.compiler.target}</target> <encoding>${project.build.sourceEncoding}</encoding> </configuration> </plugin> <!-- Shade 打包插件 --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <version>${shade.plugin.version}</version> <executions> <execution> <phase>package</phase> <goals> <goal>shade</goal> </goals> <configuration> <shadedArtifactAttached>true</shadedArtifactAttached> <shadedClassifierName>shaded</shadedClassifierName> <createDependencyReducedPom>true</createDependencyReducedPom> <transformers> <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> <!-- 请确认这个主类路径是否正确 --> <mainClass>EmotionAnalysis.EmoAnalysis</mainClass> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>reference.conf</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/> </transformers> <filters> <filter> <artifact>*:*</artifact> <excludes> <exclude>META-INF/*.SF</exclude> <exclude>META-INF/*.DSA</exclude> <exclude>META-INF/*.RSA</exclude> <exclude>module-info.class</exclude> <!-- 排除不必要的许可证文件 --> <exclude>LICENSE</exclude> <exclude>NOTICE</exclude> </excludes> </filter> </filters> <!-- 优化包含配置 --> <artifactSet> <includes> <include>org.mongodb:*</include> <include>org.mongodb.spark:*</include> <include>org.apache.logging.log4j:*</include> </includes> </artifactSet> </configuration> </execution> </executions> </plugin> </plugins> </build> </project>
10-24
我这个代码可以解决问题不:<?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>org.example</groupId> <artifactId>spark-mongodb-processor</artifactId> <version>1.0-SNAPSHOT</version> <properties> <maven.compiler.source>8</maven.compiler.source> <maven.compiler.target>8</maven.compiler.target> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <!-- 统一版本配置 --> <spark.version>3.5.6</spark.version> <scala.binary.version>2.12</scala.binary.version> <scala.version>2.12.18</scala.version> <mongodb.connector.version>10.2.1</mongodb.connector.version> <mongodb.driver.version>4.11.1</mongodb.driver.version> <hadoop.version>3.3.6</hadoop.version> <log4j.version>2.20.0</log4j.version> <shade.plugin.version>3.5.1</shade.plugin.version> <scala.maven.plugin.version>4.8.1</scala.maven.plugin.version> <compiler.plugin.version>3.11.0</compiler.plugin.version> </properties> <dependencies> <!-- Spark 核心依赖 --> <dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-core_${scala.binary.version}</artifactId> <version>${spark.version}</version> <scope>provided</scope> </dependency> <!-- Spark SQL 依赖 --> <dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-sql_${scala.binary.version}</artifactId> <version>${spark.version}</version> <scope>provided</scope> </dependency> <!-- MongoDB Spark Connector --> <dependency> <groupId>org.mongodb.spark</groupId> <artifactId>mongo-spark-connector_${scala.binary.version}</artifactId> <version>${mongodb.connector.version}</version> <!-- 简化排除配置 --> <exclusions> <exclusion> <groupId>org.mongodb</groupId> <artifactId>*</artifactId> </exclusion> </exclusions> </dependency> <!-- MongoDB 驱动依赖 - 统一版本 --> <dependency> <groupId>org.mongodb</groupId> <artifactId>mongodb-driver-sync</artifactId> <version>${mongodb.driver.version}</version> </dependency> <!-- Scala 语言依赖 --> <dependency> <groupId>org.scala-lang</groupId> <artifactId>scala-library</artifactId> <version>${scala.version}</version> </dependency> <!-- Hadoop 客户端 - 更新到较新版本 --> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-client</artifactId> <version>${hadoop.version}</version> <scope>provided</scope> </dependency> <!-- 日志处理 --> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> <version>${log4j.version}</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <version>${log4j.version}</version> </dependency> <!-- 添加 SLF4J 桥接,避免日志冲突 --> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-slf4j-impl</artifactId> <version>${log4j.version}</version> </dependency> </dependencies> <build> <plugins> <!-- Scala 编译插件 --> <plugin> <groupId>net.alchim31.maven</groupId> <artifactId>scala-maven-plugin</artifactId> <version>${scala.maven.plugin.version}</version> <executions> <execution> <id>scala-compile-first</id> <phase>process-resources</phase> <goals> <goal>add-source</goal> <goal>compile</goal> </goals> </execution> <execution> <id>scala-test-compile</id> <phase>process-test-resources</phase> <goals> <goal>testCompile</goal> </goals> </execution> </executions> <configuration> <scalaVersion>${scala.version}</scalaVersion> <args> <arg>-target:jvm-1.8</arg> </args> </configuration> </plugin> <!-- Java 编译插件 --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>${compiler.plugin.version}</version> <configuration> <source>${maven.compiler.source}</source> <target>${maven.compiler.target}</target> <encoding>${project.build.sourceEncoding}</encoding> </configuration> </plugin> <!-- Shade 打包插件 --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <version>${shade.plugin.version}</version> <executions> <execution> <phase>package</phase> <goals> <goal>shade</goal> </goals> <configuration> <shadedArtifactAttached>true</shadedArtifactAttached> <shadedClassifierName>shaded</shadedClassifierName> <createDependencyReducedPom>true</createDependencyReducedPom> <transformers> <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> <!-- 请确认这个主类路径是否正确 --> <mainClass>EmotionAnalysis.EmoAnalysis</mainClass> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>reference.conf</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/> </transformers> <filters> <filter> <artifact>*:*</artifact> <excludes> <exclude>META-INF/*.SF</exclude> <exclude>META-INF/*.DSA</exclude> <exclude>META-INF/*.RSA</exclude> <exclude>module-info.class</exclude> <!-- 排除不必要的许可证文件 --> <exclude>LICENSE</exclude> <exclude>NOTICE</exclude> </excludes> </filter> </filters> <!-- 优化包含配置 --> <artifactSet> <includes> <include>org.mongodb:*</include> <include>org.mongodb.spark:*</include> <include>org.apache.logging.log4j:*</include> </includes> </artifactSet> </configuration> </execution> </executions> </plugin> </plugins> </build> </project>
10-24
<?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> <parent> <groupId>com.ramaxel.it.ds</groupId> <artifactId>ds-schedule-service</artifactId> <version>1.0.3</version> </parent> <groupId>com.yhl.aps</groupId> <artifactId>aps-schedule-service</artifactId> <version>1.0.3</version> <name>aps-schedule-service</name> <url>https://youhualin.com</url> <description>计划服务模块</description> <dependencies> <dependency> <groupId>com.yhl.aps</groupId> <artifactId>aps-schedule-api</artifactId> <exclusions> <exclusion> <groupId>javax.annotation</groupId> <artifactId>jsr250-api</artifactId> </exclusion> <exclusion> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>2.0.24</version> </dependency> <dependency> <groupId>com.yhl.platform</groupId> <artifactId>platform-pivot-table</artifactId> </dependency> <dependency> <groupId>com.yhl.platform</groupId> <artifactId>platform-gamma</artifactId> <exclusions> <exclusion> <groupId>org.javassist</groupId> <artifactId>javassist</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.yhl.platform</groupId> <artifactId>platform-component-api</artifactId> </dependency> <dependency> <groupId>com.yhl.platform</groupId> <artifactId>platform-component</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-configuration-processor</artifactId> <optional>true</optional> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-websocket</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-bootstrap</artifactId> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> <exclusions> <exclusion> <groupId>org.ow2.asm</groupId> <artifactId>asm</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>net.logstash.logback</groupId> <artifactId>logstash-logback-encoder</artifactId> <version>7.3</version> </dependency> <dependency> <groupId>com.ramaxel.it</groupId> <artifactId>framework-utils</artifactId> <version>1.0.0</version> <exclusions> <exclusion> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> </exclusion> <exclusion> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-autoconfigure</artifactId> </exclusion> <exclusion> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> </exclusion> </exclusions> </dependency> </dependencies> <build> <finalName>aps-schedule-service</finalName> <resources> <resource> <directory>src/main/resources</directory> <filtering>true</filtering> <excludes> <exclude>env/local/*</exclude> <exclude>env/dev/*</exclude> <exclude>env/uat/*</exclude> </excludes> </resource> <resource> <directory>src/main/java</directory> <includes> <include>**/*.xml</include> </includes> </resource> </resources> <filters> <filter>src/main/resources/env/${env}.properties</filter> </filters> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>${maven.compiler.plugin.version}</version> <configuration> <source>${java.version}</source> <target>${java.version}</target> <encoding>${project.build.sourceEncoding}</encoding> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-assembly-plugin</artifactId> <version>${maven.assembly.plugin.version}</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <version>${maven.jar.plugin.version}</version> <configuration> <archive> <manifest> <mainClass>com.yhl.aps.ScheduleApplication</mainClass> <addClasspath>true</addClasspath> </manifest> </archive> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> <version>${maven.resources.plugin.version}</version> <configuration> <delimiters> <delimiter>@</delimiter> </delimiters> <useDefaultDelimiters>false</useDefaultDelimiters> </configuration> </plugin> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <version>${spring.boot.maven.plugin.version}</version> <executions> <execution> <goals> <goal>repackage</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>1.4.0</version> <configuration> <verbose>true</verbose> <overwrite>true</overwrite> <includeCompileDependencies>true</includeCompileDependencies> <configurationFile>${basedir}/src/main/resources/mybatis/mybatis-generator-config.xml</configurationFile> </configuration> </plugin> </plugins> </build> <profiles> <profile> <id>local</id> <properties> <env>local</env> </properties> <activation> <activeByDefault>true</activeByDefault> </activation> </profile> <profile> <id>dev</id> <properties> <env>dev</env> </properties> </profile> <profile> <id>uat</id> <properties> <env>uat</env> </properties> </profile> </profiles> </project>
10-15
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值