maven中jar和war的区别

原文链接

jar文件包括Java普通类、资源文件和普通文件,在maven中即是打包src/main/java和src/main/resources资源文件夹下的所有文件。在打包的时候会自动生成MATA-INF文件夹,用于存储maven的pom信息和MANIFEST.MF文件。例如:



war文件包含全部的web应用程序,即所有的java类,配置信息和jsp、js等静态资源。但是需要注意war引用war的时候会将应用war的资源全部拷贝到当前war的相同文件下,重名的文件会被替换。例如:


war包依赖:

[html]  view plain  copy
 print ? 在CODE上查看代码片 派生到我的代码片
  1. <dependency>  
  2.       <groupId>com.my.module</groupId>  
  3.       <artifactId>module1</artifactId>  
  4.       <version>0.0.1-SNAPSHOT</version>  
  5.       <type>war</type>  
  6. </dependency>  

module4依赖于module1,编译后module1类文件拷贝到了module4中classes文件下,jsp拷贝到了对应jsp目录下。