Maven分模块与多模块合并

一、分模块


1)、当拥有多模块时,创建统一 jar 包版本管理模块,此模块作为所有模块的父模块。(new 一个 Maven project),主要是将Packaging 选择为 pom 类型。
         Maven分模块与多模块合并_第1张图片

 2)、创建子模块(在父模块上右键——>New——>Maven Mode
          Maven分模块与多模块合并_第2张图片

3)、  jar工程上图即可,当创建Web服务时:如上图——>Next——>如下图
        Maven分模块与多模块合并_第3张图片    

二、多模块,多Web应用,合并为一个war包。(注意:需要对依赖的项目先maven install后再使用)


1)、当需要在 Web 工程中,加入 jar 工程时,只需要在Web工程引入 jar 工程坐标。在Web工程 pom.xml 文件中添加依赖

	
		com.yintong.parent
		common
		0.0.1-SNAPSHOT
	

2)、合并多个 Web 工程为一个 war 包。(例如:将 productWeb 工程合并到 customerWeb 工程中)

  ☛  在 customerWeb 工程的 pom.xml 文件中添加 productWeb 工程的 war 坐标。

       
	  
	     
		org.apache.maven.plugins
		maven-war-plugin
		2.4
		
		   
		      
			 
			 com.yintong.parent
			 productWeb
		      
		   
		
	     
	  
       

  ☛  在 customerWeb 项目的 pom.xml 文件中添加 productWeb 项目的依赖。(type属性不能忽略)

        
	    com.yintong.parent
	    productWeb
	    0.0.1-SNAPSHOT
	    war
        

  ☛ 在父目录(或子目录)上右键——>Run as——>Maven install 就会对所有的子目录进行打包(jar Or war),在此项目或者对应项目的 target 目录中即可查看对应的 jar Or war 包(都可单独拿出来使用或部署)。通过压缩工具可查询项目内容。类结构如下图
      Maven分模块与多模块合并_第4张图片

  ☛ 注意事项:查看最终父目录的 war 包得出结论,当多个 web 项目存在相同路径相同文件名时,总分支的文件会覆盖自分支的,即 customerWeb 会覆盖 productWeb 的,如果总的没有,子分支存在多个相同文件时,查看 pom.xml 中合并的顺序(按照 的顺序),以第一个文件的内容为主。

三、 项目启动插入 jetty 插件(运行:run as ——> maven build... ——>在 goals 中输入:clean jetty:run 即可)


  ☞ 在需要启动的项目所对应的 pom.xml 文件中加入 jetty 插件

        
            org.mortbay.jetty
	    jetty-maven-plugin
	    8.1.14.v20131031
	    
	        10
		9999
		
		    
		    /goods
		
		
                    
		    
	                
			9080
			60000
		    
		
            
        

☞ 配置 Jetty(项目右键——>Run as——>Run configurations...

Maven分模块与多模块合并_第5张图片

☞  在往后的运行中,就不需要重新配置了,只要在Debug As...Run As... 下拉中点击运行即可。

Maven分模块与多模块合并_第6张图片

☞  启动成功之后,在配置插件的 pom.xml 文件中查看 jetty 配置的端口(9080)和项目名称(/customer),如下图

Maven分模块与多模块合并_第7张图片

-----------------------------Game Over---------------------------------------Thanks----------------------

你可能感兴趣的:(Maven)