posts - 495,comments - 227,trackbacks - 0
          <plugin>
                          
          <groupId>org.apache.maven.plugins</groupId>
                          
          <artifactId>maven-shade-plugin</artifactId>
                          
          <version>2.4.2</version>
                          
          <configuration>
                              
          <createDependencyReducedPom>false</createDependencyReducedPom>
                          
          </configuration>
                          
          <executions>
                              
          <execution>
                                  
          <phase>package</phase>
                                  
          <goals>
                                      
          <goal>shade</goal>
                                  
          </goals>
                                  
          <configuration>
                                      
          <artifactSet>
                                          
          <includes>
                                              
          <include>org.apache.activemq:activemq-mqtt</include>
                                          
          </includes>
                                      
          </artifactSet>
                                     
          <transformers>
          <transformer
          implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
          <mainClass>com.duxiu.demo.app.ApplicationKt</mainClass>
          </transformer>
          </transformers>

                                  
          </configuration>
                              
          </execution>
                          
          </executions>
                      
          </plugin>


          此配置方式將所有的依賴包的源碼都解壓打包進去.
          如果是war包,會將整個站點解壓打包進去.
          同時打包過程中如果有classpath和依賴的jar包有相同的類,會將classpath里的類替換掉依賴包里的類


          <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-assembly-plugin</artifactId>
          <configuration>
          <descriptorRefs>
          <descriptorRef>jar-with-dependencies</descriptorRef>
          </descriptorRefs>
          <!--<descriptors>
          <descriptor>assembly.xml</descriptor>
          </descriptors>-->
          <!--<finalName>employees-app-${project.version}</finalName>-->
          <archive>
          <manifest>
          <mainClass>com.duxiu.demo.app.ApplicationKt</mainClass>
          </manifest>
          </archive>
          </configuration>
          <executions>
          <execution>
          <phase>package</phase>
          <goals>
          <goal>single</goal>
          </goals>
          </execution>
          </executions>
          </plugin>
          只將依賴的jar包解壓打包,對于靜態文件等是不會打包的


          <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>appassembler-maven-plugin</artifactId>
          <version>1.10</version>
          <configuration>
          <!-- 生成linux, Windows兩種平臺的執行腳本 -->
          <platforms>
          <platform>windows</platform>
          <platform>unix</platform>
          </platforms>
          <!-- 根目錄 -->
          <assembleDirectory>${project.build.directory}/mall</assembleDirectory>
          <!-- 打包的jar,以及maven依賴的jar放到這個目錄里面 -->
          <repositoryName>lib</repositoryName>
          <!-- 可執行腳本的目錄 -->
          <binFolder>bin</binFolder>
          <!-- 配置文件的目標目錄 -->
          <configurationDirectory>conf</configurationDirectory>
          <!-- 拷貝配置文件到上面的目錄中 -->
          <copyConfigurationDirectory>true</copyConfigurationDirectory>
          <!-- 從哪里拷貝配置文件 (默認src/main/config) -->
          <configurationSourceDirectory>src/main/resources</configurationSourceDirectory>
          <!-- lib目錄中jar的存放規則,默認是${groupId}/${artifactId}的目錄格式,flat表示直接把jar放到lib目錄 -->
          <repositoryLayout>flat</repositoryLayout>
          <encoding>UTF-8</encoding>
          <logsDirectory>logs</logsDirectory>
          <tempDirectory>tmp</tempDirectory>
          <programs>
          <program>
          <id>mall</id>
          <!-- 啟動類 -->
          <mainClass>com.duxiu.demo.app.ApplicationKt</mainClass>
          <jvmSettings>
          <extraArguments>
          <extraArgument>-server</extraArgument>
          <extraArgument>-Xmx2G</extraArgument>
          <extraArgument>-Xms2G</extraArgument>
          </extraArguments>
          </jvmSettings>
          </program>
          </programs>
          </configuration>
          </plugin>

          打包應用程序,并會生成bat或sh可執行文件



          <plugin>
          <artifactId>maven-antrun-plugin</artifactId>
          <executions>
          <execution>
          <id>move-main-class</id>
          <phase>compile</phase>
          <configuration>
          <tasks>
          <move todir="${project.build.directory}/${project.artifactId}-${version}/com/duxiu/demo/app">
          <fileset dir="${project.build.directory}/classes/com/duxiu/demo/app">
          <include name="*.class" />
          </fileset>
          </move>
          </tasks>
          </configuration>
          <goals>
          <goal>run</goal>
          </goals>
          </execution>
          </executions>
          </plugin>

          打包的時候將包里的某個文件移動到指定的位置
          posted on 2016-07-20 09:42 SIMONE 閱讀(1324) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 沁源县| 阜平县| 合阳县| 凤台县| 芦溪县| 柯坪县| 中阳县| 永善县| 广宗县| 阳山县| 咸阳市| 黑龙江省| 栾川县| 永善县| 手机| 股票| 通辽市| 旌德县| 潍坊市| 横峰县| 平定县| 安国市| 和硕县| 小金县| 宣恩县| 龙江县| 循化| 江华| 礼泉县| 武汉市| 长子县| 晋宁县| 扶余县| 西乡县| 淄博市| 鹤山市| 东乌| 平阳县| 秭归县| 伽师县| 原平市|