zoukankan      html  css  js  c++  java
  • Maven打包程序

    1、src/main目录下建立scritps、config、assembly目录
    scritps:存放脚本文件如批处理
    assembly:打包配置文件
     
    2、assembly目录下建立package.xml
     1 <assembly>
     2   <id>bin</id>
     3   <!-- 最终打包成一个用于发布的zip文件 -->
     4   <formats>
     5     <format>zip</format>
     6   </formats>
     7 
     8   <!-- Adds dependencies to zip package under lib directory -->
     9   <dependencySets>
    10     <dependencySet>
    11       <!-- 第三方jar不要解压,打包进zip文件的lib目录 -->
    12       <useProjectArtifact>false</useProjectArtifact>
    13       <outputDirectory>lib</outputDirectory>
    14       <unpack>false</unpack>
    15     </dependencySet>
    16   </dependencySets>
    17 
    18   <fileSets>
    19     <!-- 把项目相关的说明文件,打包进zip文件的根目录 -->
    20     <fileSet>
    21       <directory>${project.basedir}</directory>
    22       <outputDirectory>/</outputDirectory>
    23       <includes>
    24         <include>README*</include>
    25         <include>LICENSE*</include>
    26         <include>NOTICE*</include>
    27       </includes>
    28     </fileSet>
    29 
    30     <!-- 把项目的配置文件,打包进zip文件的config目录 -->
    31     <fileSet>
    32       <directory>${project.basedir}srcmain
    esources</directory>
    33       <outputDirectory>conf</outputDirectory>
    34       <includes>
    35         <include>*.properties</include>
    36       </includes>
    37     </fileSet>
    38 
    39     <!-- 把项目的脚本文件目录中的启动脚本文件,打包进zip文件的跟目录 -->
    40     <fileSet>
    41       <directory>${project.basedir}srcmainscripts</directory>
    42       <outputDirectory></outputDirectory>
    43       <includes>
    44         <include>run.*</include>
    45       </includes>
    46     </fileSet>
    47 
    48 49     <!-- 把项目自己编译出来的jar文件,打包进zip文件的根目录 -->
    50     <fileSet>
    51       <directory>${project.build.directory}</directory>
    52       <outputDirectory></outputDirectory>
    53       <includes>
    54         <include>*.jar</include>
    55       </includes>
    56     </fileSet>
    57   </fileSets>
    58 </assembly>

    3、修改pom.xml文件,增加plugin

     1   <plugin>
     2         <groupId>org.apache.maven.plugins</groupId>
     3          <artifactId>maven-jar-plugin</artifactId>
     4          <configuration>
     5              <archive>
     6                 <manifest>
     7                     <addClasspath>true</addClasspath>
     8                      <classpathPrefix>lib/</classpathPrefix>
     9                      <mainClass>程序main函数所在类的全类名</mainClass>
    10                   </manifest>
    11                </archive>
    12      </configuration>
    13   </plugin>
    14 
    15 
    16     <plugin>
    17       <groupId>org.apache.maven.plugins</groupId>
    18       <artifactId>maven-assembly-plugin</artifactId>
    19       <version>2.4</version>
    20       <configuration>
    21        <descriptors>
    22                <descriptor>src/main/assembly/package.xml</descriptor>
    23              </descriptors>
    24        </configuration>
    25        <executions>
    26               <execution>
    27               <id>make-assembly</id>
    28                <phase>package</phase>
    29               <goals>
    30                   <goal>single</goal>
    31               </goals>
    32            </execution>
    33       </executions>
    34  </plugin>
  • 相关阅读:
    Java-Class-C:com.alibaba.fastjosn.JSON.java
    兆芯笔试题(2015)找反复数最多的字母的数量以及位置
    获得文件属性的函数调用实例
    错了:用流量能够放肆,有wifi则要节制
    为什么会找不到D层文件?
    Cocos2d-x3.0游戏实例之《别救我》第六篇——从代码中获取UI控件
    Add Binary
    【iOS开发之Objective-C】书签管理器项目
    UVa 11732 strcmp() Anyone?
    【打CF,学算法——二星级】Codeforces Round #313 (Div. 2) B. Gerald is into Art(水题)
  • 原文地址:https://www.cnblogs.com/zengguoyu/p/4882265.html
Copyright © 2011-2022 走看看