用maven制作Java项目发行包

制作软件发行包只是Maven能够轻松完成的众多任务之一,下面通过一个简单的实例进行说明。

按照Maven的标准做法,该功能以插件的方式提供,这个插件就是Maven Assembly Plugin,它的网址是:
    http://maven.apache.org/plugins/maven-assembly-plugin/

1.准备工作

下载最新Maven 2的软件包,安装后将其bin路径注册到系统的查找路径中。
执行下面的命令创建一个供测试用的待发布web项目:
命令行
  1. mvn archetype:create \  
  2. -DgroupId=de.focusdv.bcs -DartifactId=myweb \  
  3. -DarchetypeArtifactId=maven-archetype-webapp 

这会产生下面的目录结构:
java 代码
 
  1. myweb\ 
  2.   deploy\    <-- 存放用于制作发行包的Maven配置文件。
  3.     output\  <-- 预期存放我们即将创建的发行包,假设是myweb-1.0-SNAPSHOT.zip。在真实的项目
  4.                  中,将这个目录单独放置到其他地方也许会更好。  
  5.   dist\      <-- 存放打包文件,假设这里是myweb-1.0-SNAPSHOT.war  
  6.   src\  
  7.     main\  
  8.       \java  
  9.       \resources  
  10.       \webapp  
  11.     test\  
  12.   target\  
  13.   pom.xml  

除了deploydist目录由我们自己手动创建外,其余部分为Maven按照标准的目录布局自动产生。

接下来我们的任务就是将myweb下面的src目录、dist目录,以及pom.xml文件打包到myweb-1.0-SNAPSHOT.zip中,供我们的客户使用。

2.编写配置文件

首先在deploy目录中编写Maven项目的配置文件pom.xml:

xml 代码
 
  1. <project>    
  2.     <modelVersion>4.0.0modelVersion>    
  3.     <groupId>com.mycompanygroupId>    
  4.     <artifactId>mywebartifactId>    
  5.     <name>mywebname>    
  6.     <version>1.0-SNAPSHOTversion>    
  7.     <url>com.mycompanyurl>    
  8.     <build>   
  9.          
  10.         <directory>outputdirectory>   
  11.         <plugins>   
  12.              
  13.             <plugin>    
  14.                 <artifactId>maven-assembly-pluginartifactId>  
  15.                 <configuration>   
  16.                      
  17.                     <appendAssemblyId>falseappendAssemblyId>  
  18.                        
  19.                     <descriptors>    
  20.                         <descriptor>distribution.xmldescriptor>    
  21.                     descriptors>    
  22.                 configuration>    
  23.             plugin>    
  24.         plugins>    
  25.     build>    
  26. project>    

xml 代码<o:p> </o:p>主要信息已经注释到代码中了。

然后在相同目录下编写在pom.xml中指定的名为distribution.xml的文件:

xml 代码
 
  1. <assembly>    
  2.     <id>distributionid>    
  3.     <formats>   
  4.           
  5.         <format>zipformat>    
  6.     formats>   
  7.    
  8.     <includeBaseDirectory>trueincludeBaseDirectory>   
  9.      
  10.     <fileSets>    
  11.         <fileSet>    
  12.             <directory>distdirectory>   
  13.             <directory>srcdirectory>   
  14.             <includes>    
  15.                 <include>*.xmlinclude>   
  16.             includes>    
  17.             <outputDirectory>/outputDirectory>    
  18.         fileSet>    
  19.     fileSets>    
  20. assembly>   

 

重要信息同样已经包含到注释中了。

3.制作发行包

编写好这两个文件之后,在命令行中切换到deploy目录下,执行下面的命令:
  1. mvn assembly:assembly  

如果一切顺利,应该能在output目录下找到 myweb-1.0-SNAPSHOT.zip文件,我们的发行包已经整装待发了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值