zoukankan      html  css  js  c++  java
  • MAVEN项目模块化

    maven的最大的特点之中的一个就是能够把项目模块化。

    前面的一篇文章MAVEN创建并打包web项目已经创建了一个简单的webapp,注意这个webapp的打包方式是war。

    假设如今又要划分出来一个模块,而webapp依赖这个新划分的模块。应该怎么做呢,磨叽!

    首先创建一个maven module。它的parent是test。不能是其它的,由于仅仅有test的打包方式是pom。例如以下图所看到的:


    模块test_module的打包方式选择jar,可是虽然已经选择了,在自己主动生成的test_module/pom.xml中打包方式依旧没指明,须要手动加入,例如以下图所看到的:


    以下须要把test_module作为test_web的依赖。操作例如以下:


    操作完毕后例如以下图,如今新的模块已经加入完毕了。


    MAVEN创建并打包web项目中的打包方式是用命令行,显然比較麻烦。那么我们能够使用eclipse来打包。


    依照上图选择maven build,会进入下图所看到的goals设置界面,把之前运行的mvn  clean package命令输入就能够了。


    再次点击之前点击的maven build控制台就開始运作了:


    细心的人会发现有个maven install,事实上这个也是能够打包的,点击它后控制台的信息例如以下:

    [INFO] Building war: F:wangpengMyRprojects	est	est_web	arget	est_web.war
    [INFO] WEB-INFweb.xml already added, skipping
    [INFO] 
    [INFO] --- maven-install-plugin:2.4:install (default-install) @ test_web ---
    [INFO] Installing F:wangpengMyRprojects	est	est_web	arget	est_web.war to C:Userswangpeng.m2
    epositorycomwangpeng	estmaven	est_web.0.1-SNAPSHOT	est_web-0.0.1-SNAPSHOT.war
    [INFO] Installing F:wangpengMyRprojects	est	est_webpom.xml to C:Userswangpeng.m2
    epositorycomwangpeng	estmaven	est_web.0.1-SNAPSHOT	est_web-0.0.1-SNAPSHOT.pom
    [INFO] ------------------------------------------------------------------------
    [INFO] Reactor Summary:
    [INFO] 
    [INFO] test .............................................. SUCCESS [  0.429 s]
    [INFO] test_module ....................................... SUCCESS [  1.119 s]
    [INFO] test_web Maven Webapp ............................. SUCCESS [  0.491 s]
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time: 2.154 s
    [INFO] Finished at: 2015-08-13T17:31:22+08:00
    [INFO] Final Memory: 11M/153M
    [INFO] ------------------------------------------------------------------------
    注意Installing那一行。说明此命令不仅是打包。他会把打好的包拷贝到本地仓库。看一下我的仓库:


    打开那个war包。进入WEB-INF/lib,你会发现test_module已经打包成jar作为war的一部分了。




  • 相关阅读:
    [C++]多源最短路径(带权有向图):【Floyd算法(动态规划法)】 VS n*Dijkstra算法(贪心算法)
    [C++]Yellow Cards
    [C++]哈夫曼树(最优满二叉树) / 哈夫曼编码(贪心算法)
    考研部分复习策略记录
    [C++/JavaScript]数据结构:栈和数列>案例引入(数制的转换)
    [C++]数据结构:线性表之(单)链表
    [C++]数据结构:线性表之顺序表
    自然语言处理(NLP)之个人小结
    NLP之TF-IDF与BM25原理探究
    [Python]Excel编程示例教程(openpyxl)
  • 原文地址:https://www.cnblogs.com/yfceshi/p/6884801.html
Copyright © 2011-2022 走看看