网站首页
JSP空间
动态资讯
开源项目
技术文档
资源下载
J2EE资源
客户论坛
在线支付
 
  技术文档>>JAVA>>新手入门>>基础入门>查看文档  
  用maven制作java项目发行包     
  文章作者:未知  文章来源:水木森林  
  查看:82次  录入:管理员--2007-11-17  
 
  关键字:   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文件,我们的发行包已经整装待发了。
 
 
上一篇: java 基础入门 pom.xml 元素描述    下一篇: 接口和抽象类的定义方式举例说明
  相关文档
j2me小tip:setclip方法的使用详解 11-17
hibernate 连tomcat数据源配置 11-17
jsp新手入门初级教程之jsp概述 11-17
string类使用的例子(3) 11-17
web app用quartz实现java schedule job 11-17
java web start开发指南(二) 11-17
java核心代码例程之:calendardemo.java 11-17
windows和linux下搭建j2sdk的环境 11-16
用j2me为手机diy一个顶牛牛游戏 11-17
关于 mysql5 改密码后不能登录问题的解答 11-17
ejb轻松进阶(3) 11-17
课程介绍(3)sl-265 结构化程序员的java技术 11-16
如何计算java对象占用的内存 11-17
3. building view components 11-17
使用java中的动态代理实现数据库连接池 11-17
java新功能之一枚举 11-17
wait,notify,sleep,join和线程同步问题 11-17
正则表达式常用功能—查询 提取 替换 分割 11-17
实现真正的j2ee便携式应用 11-16
用java制作网络文件下载系统 11-17
返回首页 | 关于我们 | J网章程 | JSP空间合租 | 客服中心 | 免责声明 | 常见问题 | 参观机房
本站主机空间代理至厦门市华众网络科技有限公司
《中华人民共和国增值电信业务经营许可证》
编号:闽B2-20050079
@2005-2008福建JSP技术网 版权所有 闽ICP备05000928号
技术电话:13616026886
邮箱:admin@fjjsp.com 站长QQ,点击这里给我发消息