JR 精品文章 - 用maven制作Java项目发行包
AD: jr (at) javaresearch.org


首页 | 动态 | 文章 | FAQ  | 新闻 | 下载 | 代码 | 工作 | 调查 | 术语 | 站点 | 图书 | 论坛 | 帮助 | 全部  

TOP | 交流 | 软件 | 专栏 | 开源 | 译/著 | 源码 | API  | 推荐 | FTP  | 积分 | 统计 | 搜索 | Blog | 我们  
首页 » 研究文集 » 开发工具 搜索标题相关文章 搜索标题相关文章    评论此文章 发表评论     开始监控此文章 开始监控   加入收藏夹  加入收藏夹
用maven制作Java项目发行包
autumn_thermal 转贴   更新:2007-01-15 16:36:10  版本: 1.0   

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

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


1.准备工作
下载最新Maven 2的软件包,安装后将其bin路径注册到系统的查找路径中。
执行下面的命令创建一个供测试用的待发布web项目:

命令行
mvn archetype:create \   
-DgroupId=de.focusdv.bcs -DartifactId=myweb \   
-DarchetypeArtifactId=maven-archetype-webapp  


这会产生下面的目录结构:

java 代码
 
myweb\  

  deploy\    <-- 存放用于制作发行包的Maven配置文件。

    output\  <-- 预期存放我们即将创建的发行包,假设是myweb-1.0-SNAPSHOT.zip。在真实的项目 
                 中,将这个目录单独放置到其他地方也许会更好。   
  dist\      <-- 存放打包文件,假设这里是myweb-1.0-SNAPSHOT.war   
  src\   
    main\   
      \java   
      \resources   
      \webapp   
    test\   
  target\   
  pom.xml   

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

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

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


xml 代码
 
<project>     
    <modelVersion>4.0.0<!--</span-->modelVersion>     
    <groupId>com.mycompany<!--</span-->groupId>     
    <artifactId>myweb<!--</span-->artifactId>     
    <name>myweb<!--</span-->name>     
    <version>1.0-SNAPSHOT<!--</span-->version>     
    <url>com.mycompany<!--</span-->url>     
    <build>    
       <!-- 发行包的输出路径 -->   
        <directory>output<!--</span-->directory>    
        <plugins>    
           <!-- 对Maven Assembly插件进行配置 -->   
            <plugin>     
                <artifactId>maven-assembly-plugin<!--</span-->artifactId>   
                <configuration>    
                   <!-- 在生成的发行包名称中不包含assemblyId(这里是“distribution”) -->   
                    <appendAssemblyId>false<!--</span-->appendAssemblyId>   
                     <!-- 指定唯一的描述文件 -->   
                    <descriptors>     
                        <descriptor>distribution.xml<!--</span-->descriptor>     
                    <!--</span-->descriptors>     
                <!--</span-->configuration>     
            <!--</span-->plugin>     
        <!--</span-->plugins>     
    <!--</span-->build>     
<!--</span-->project>     



xml 代码 主要信息已经注释到代码中了。

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


xml 代码
 
<assembly>     
    <id>distribution<!--</span-->id>     
    <formats>    
        <!-- 指定发行包使用zip格式 -->   
        <format>zip<!--</span-->format>     
    <!--</span-->formats>    
 <!-- 在发行包中使用根目录,按照惯例,这里是 myweb-1.0-SNAPSHOT-->   
    <includeBaseDirectory>true<!--</span-->includeBaseDirectory>    
   <!-- 将要打包到发行包中的内容 -->   
    <fileSets>     
        <fileSet>     
            <directory>dist<!--</span-->directory>    
            <directory>src<!--</span-->directory>    
            <includes>     
                <include>*.xml<!--</span-->include>    
            <!--</span-->includes>     
            <outputDirectory>/<!--</span-->outputDirectory>     
        <!--</span-->fileSet>     
    <!--</span-->fileSets>     
<!--</span-->assembly>    


 

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

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

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


版权声明  
本篇文章对您是否有帮助?  投票:         投票结果:     4       0
作者其它文章: 作者全部文章     查看作者的Blog

这个文章共有 0 条评论
主题: Maven项目描述参考文档一: 上一篇文章
返回文章列表 返回〔开发工具〕
下一篇文章 主题: 改善代码质量--重构


文字广告链接
        自主、快速定制基于JAVA的B/S业务系统          重量级企业在线自定义WEB报表平台
        Excel制表、零代码发布、打印、图表结合——快逸报表,免费、稳定、功能强大的java工具
        技术圈: 关于Java、dotNet、PHP、Ruby、奇客、Web2.0等更多资讯博客精选文章

关于 JR  |  版权声明  |  联系我们 

©2002-2006 JR 版权所有 沪ICP备05019622号