资源文件处理
<resources>
<resource>
<directory>src/main/resources</directory>
<excludes>
<exclude>logback-spring.xml</exclude>
<exclude>mapper/**</exclude>
<exclude>sql/**</exclude>
</excludes>
</resource>
<resource>
<filtering>true</filtering>
<directory>src/main/resources</directory>
<excludes>
<exclude>application-dev.properties</exclude>
<exclude>application-test.properties</exclude>
<exclude>application-local.properties</exclude>
<exclude>application-prod.properties</exclude>
<exclude>application.properties</exclude>
</excludes>
</resource>
<resource>
<filtering>true</filtering>
<directory>src/main/resources</directory>
<includes>
<include>application-${profileActive}.properties</include>
<include>application.properties</include>
</includes>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>${maven.version}</version>
<executions>
<execution>
<id>default-resources</id>
<phase>validate</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>target/classes</outputDirectory>
<useDefaultDelimiters>false</useDefaultDelimiters>
<delimiters>
<delimiter>@</delimiter>
</delimiters>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
<filtering>true</filtering>
</resource>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**</include>
</includes>
<filtering>true</filtering>
</resource>
<resource>
<directory>src/main/resources/</directory>
<filtering>true</filtering>
<includes>
<include>**/*.xml</include>
<include>**/*.yml</include>
<include>**/*.properties</include>
</includes>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
生成JSW脚本
<!-- 生成jsw执行脚本 -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>appassembler-maven-plugin</artifactId>
<version>2.0.0</version>
<executions>
<execution>
<id>make-jsw</id>
<phase>package</phase>
<goals>
<goal>generate-daemons</goal>
</goals>
</execution>
</executions>
<configuration>
<!--lib下直接存放jar,没有路径文件夹(如com/apache),如果没有这个选项则放在lib下的jar包会被com/apache类似的多层文件夹包裹起来-->
<repositoryLayout>flat</repositoryLayout>
<repositoryName>lib</repositoryName>
<configurationDirectory>conf</configurationDirectory>
<configurationSourceDirectory>target/classes</configurationSourceDirectory>
<copyConfigurationDirectory>false</copyConfigurationDirectory>
<includeConfigurationDirectoryInClasspath>true</includeConfigurationDirectoryInClasspath>
<useWildcardClassPath>true</useWildcardClassPath>
<!--生成的项目的目录位置,这里的client是项目的名称,你可以根据你的需要自己随便命名-->
<target>${project.build.directory}</target>
<binFileExtensions>
<unix>.sh</unix>
</binFileExtensions>
<!--
<platforms>
<platform>windows</platform>
<platform>unix</platform>
</platforms>
-->
<daemons>
<daemon>
<id>${project.name}</id>
<platforms>
<platform>jsw</platform>
</platforms>
<mainClass>${main.class.name}</mainClass>
<generatorConfigurations>
<generatorConfiguration>
<generator>jsw</generator>
<includes>
<include>linux-x86-64</include>
<!--
<include>windows-x86-64</include>
<include>macosx-universal-64</include>
-->
</includes>
<configuration>
<property>
<name>configuration.directory.in.classpath.first</name>
<value>conf</value>
</property>
<property>
<name>wrapper.console.loglevel</name>
<value>ERROR</value>
</property>
<property>
<name>wrapper.logfile.loglevel</name>
<value>ERROR</value>
</property>
<property>
<name>wrapper.logfile</name>
<value>logs/wrapper.log</value>
</property>
<property>
<name>wrapper.logfile.format</name>
<value>M</value>
</property>
<property>
<name>wrapper.logfile.maxsize</name>
<value>10m</value>
</property>
<property>
<name>wrapper.logfile.maxfiles</name>
<value>5</value>
</property>
</configuration>
</generatorConfiguration>
</generatorConfigurations>
<jvmSettings>
<extraArguments>
<extraArgument>-Xrs</extraArgument>
<extraArgument>-server</extraArgument>
<extraArgument>-Xmx2G</extraArgument>
<extraArgument>-Xms512M</extraArgument>
</extraArguments>
</jvmSettings>
</daemon>
</daemons>
</configuration>
</plugin>
<!-- 拷贝配置文件 -->
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<tasks>
<!--
<mkdir dir="${project.build.directory}/jsw/${project.name}/conf"/>
-->
<mkdir dir="${project.build.directory}/jsw/${project.name}/logs"/>
<copy todir="${project.build.directory}/jsw/${project.name}/conf" overwrite="true" >
<fileset dir="${project.build.directory}/classes" erroronmissingdir="false">
<!--
<include name="*.yml"/>
<include name="*.xml"/>
<include name="*.properties"/>
-->
<exclude name="com/**"/>
<exclude name="sql/**"/>
<exclude name="env/**"/>
</fileset>
</copy>
<delete file="${project.build.directory}/${project.name}.tar"/>
<tar destfile="${project.build.directory}/${project.name}.tar" basedir="${project.build.directory}/jsw"/>
<!--
<gzip destfile="${project.build.directory}/${project.name}.tar.gz" src="${project.build.directory}/${project.name}.tar"/>
-->
</tasks>
</configuration>
</execution>
</executions>
</plugin>