MAVEN项目模块化

来源:互联网 发布:每周eia数据时间 编辑:程序博客网 时间:2024/05/17 22:12

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:\wangpeng\MyR\projects\test\test_web\target\test_web.war[INFO] WEB-INF\web.xml already added, skipping[INFO] [INFO] --- maven-install-plugin:2.4:install (default-install) @ test_web ---[INFO] Installing F:\wangpeng\MyR\projects\test\test_web\target\test_web.war to C:\Users\wangpeng\.m2\repository\com\wangpeng\testmaven\test_web\0.0.1-SNAPSHOT\test_web-0.0.1-SNAPSHOT.war[INFO] Installing F:\wangpeng\MyR\projects\test\test_web\pom.xml to C:\Users\wangpeng\.m2\repository\com\wangpeng\testmaven\test_web\0.0.1-SNAPSHOT\test_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的一部分了。




0 0
原创粉丝点击