Maven打包时加入依赖

    xiaoxiao2025-04-01  15

    可以利用maven的assembly插件来完成 1、在pom.xml中加入: <plugins>             <plugin>                 <groupId>org.apache.maven.plugins</groupId>                 <artifactId>maven-jar-plugin</artifactId>                 <version>2.4</version>                 <configuration>                     <archive>                         <manifest>                             <addClasspath>true</addClasspath>                             <useUniqueVersions>false</useUniqueVersions>                             <classpathPrefix>lib/</classpathPrefix>                             <mainClass>com.test.schedule.Starter</mainClass>                         </manifest>                     </archive>                 </configuration>             </plugin>             <plugin>                 <groupId>org.apache.maven.plugins</groupId>                 <artifactId>maven-dependency-plugin</artifactId>                 <executions>                     <execution>                         <id>copy</id>                         <phase>package</phase>                         <goals>                             <goal>copy-dependencies</goal>                         </goals>                         <configuration>                             <outputDirectory>./target/lib</outputDirectory>                         </configuration>                     </execution>                 </executions>             </plugin>             <plugin>                 <groupId>org.apache.maven.plugins</groupId>                 <artifactId>maven-assembly-plugin</artifactId>                 <configuration>                     <descriptors>                         <descriptor>src/main/resources/assembly.xml</descriptor>                     </descriptors>                 </configuration>                 <executions>                     <execution>                         <id>make-assembly</id>                         <phase>package</phase>                         <goals>                             <goal>single</goal>                         </goals>                     </execution>                 </executions>             </plugin>         </plugins> 2、将assembly.xml放在上图黄色路径下(也可放在src/test/resources下): assembly.xml代码: <assembly 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/assembly-1.0.0.xsd">     <formats>         <format>tar</format>     </formats>     <includeBaseDirectory>true</includeBaseDirectory>     <fileSets>         <fileSet>             <directory>${project.basedir}\bin</directory>             <outputDirectory>\bin</outputDirectory>         </fileSet>         <fileSet>             <directory>target</directory>             <includes>                 <include>${artifactId}-${version}.jar</include>             </includes>             <outputDirectory>\</outputDirectory>         </fileSet>         <fileSet>             <directory>target/lib</directory>             <outputDirectory>/lib</outputDirectory>         </fileSet>     </fileSets> </assembly> 3、bin目录可选: startup.sh代码: #!/bin/bash export BASEDIR=$(cd `dirname $0`; pwd)/.. nohup java -jar $BASEDIR/test-schedule.jar >  /dev/null 2>&1 & echo $! > ./sync.pid shutdown.sh代码: #!/bin/bash bindir=`dirname $0` echo $bindir export bindir PID=$(cat $bindir/sync.pid) echo $PID kill $PID rm -f $bindir/sync.pid echo SyncServer shutdown. exit 0
    转载请注明原文地址: https://ju.6miu.com/read-1297610.html
    最新回复(0)