springboot分离打包build

在<properties>下定义一个输出目录

<properties>
  <JarOut.path>${project.build.directory}/out</JarOut.path>
</properties>
<build>
    <plugins>
      <!--清理之前生成的打包目录。-->
      <plugin>
        <artifactId>maven-clean-plugin</artifactId>
        <version>2.5</version>
        <executions>
          <execution>
            <id>auto-clean</id>
            <phase>initialize</phase>
            <goals>
              <goal>clean</goal>
            </goals>
            <configuration>
              <skip>false</skip>
              <filesets>
                <fileset>
                  <directory>${JarOut.path}</directory>
                </fileset>
              </filesets>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <!--打包自己的项目为jar并放入lib目录,不包含依赖。-->
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-jar-plugin</artifactId>
        <version>2.6</version>
        <configuration>
          <finalName>${project.artifactId}</finalName>
          <archive>
            <manifest>
              <addClasspath>true</addClasspath>
              <!--MANIFEST.MF 中 Class-Path 加入前缀-->
              <classpathPrefix>./lib/</classpathPrefix>
              <!--jar包不包含唯一版本标识-->
              <useUniqueVersions>false</useUniqueVersions>
              <mainClass>cn.adrms.mall.MallApplication</mainClass>
            </manifest>
            <manifestEntries>
              <Class-Path>./config/</Class-Path>
            </manifestEntries>
          </archive>
          <!--不打包资源文件-->
          <excludes>
            <exclude>*/*.xml</exclude>
            <exclude>*/*/*.xml</exclude>
          </excludes>
          <outputDirectory>${JarOut.path}</outputDirectory>
        </configuration>
      </plugin>

      <!--拷贝依赖 copy-dependencies-->
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-dependency-plugin</artifactId>
        <version>2.8</version>
        <executions>
          <execution>
            <id>copy-dependencies</id>
            <phase>package</phase>
            <goals>
              <goal>copy-dependencies</goal>
            </goals>
            <configuration>
              <outputDirectory>
                ${JarOut.path}/lib/
              </outputDirectory>
            </configuration>
          </execution>
        </executions>
      </plugin>

      <!--拷贝资源文件 copy-resources-->
      <plugin>
        <artifactId>maven-resources-plugin</artifactId>
        <version>3.2.0</version>
        <executions>
          <execution>
            <id>copy-resources</id>
            <phase>package</phase>
            <goals>
              <goal>copy-resources</goal>
            </goals>
            <configuration>
              <resources>
                <resource>
                  <directory>src/main/resources</directory>
                  <excludes>
                    <exclude>*.yml</exclude>
                  </excludes>
                </resource>
              </resources>
              <outputDirectory>${JarOut.path}/config/</outputDirectory>
            </configuration>
          </execution>
          <execution>
            <id>copy-yml</id>
            <phase>package</phase>
            <goals>
              <goal>copy-resources</goal>
            </goals>
            <configuration>
              <resources>
                <resource>
                  <directory>src/main/resources</directory>
                  <includes>
                    <include>*.yml</include>
                  </includes>
                </resource>
              </resources>
              <outputDirectory>${JarOut.path}</outputDirectory>
            </configuration>
          </execution>
        </executions>
      </plugin>

      <!--maven打包时,跳过测试-->
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>2.22.2</version>
        <configuration>
          <skip>true</skip>
        </configuration>
      </plugin>
    </plugins>

  </build>
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容