
eclipse 如何对maven项目进行打包?
CreateTime--2018年4月19日22:02:50
Author:Marydon
1.方式一:使用eclipse中的maven插件(命令)打包
方法:利用pom.xml文件打包
pom.xml内容示范:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>demo_WebService2</groupId>
<artifactId>demo_WebService2</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<dependencies>
<!-- https://mvnrepository.com/artifact/aopalliance/aopalliance -->
<dependency>
<groupId>aopalliance</groupId>
<artifactId>aopalliance</artifactId>
<version>1.0</version>
</dependency>
</dependencies>
<build>
<plugins>
<!-- Java编译插件版本 -->
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.5.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
<!-- 跳过对测试代码的编译 -->
<!-- <skip>true</skip> -->
</configuration>
</plugin>
<!-- 跳过对测试类代码的执行 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.4.2</version>
<configuration>
<skipTests>true</skipTests>
</configuration>
</plugin>
</plugins>
</build>
</project>
打包前,target目录在eclipse下的展示
打包前,target目录在磁盘上的展示
具体操作:
选中"pom.xml"-->右键-->Run As/Debugg As-->Maven install
不出意外的话,打包成功
打包后,target目录在eclipse下的展示
选中target目录-->右键-->Refresh
打包后,target目录在磁盘上的展示
红框标出来的是,多出的文件夹
Maven install命令执行流程:
对src/main/java/下的Java文件进行编译-->对src/test/java/下的Java文件进行编译-->
在target目录下创建项目webapp:demo_WebService2-0.0.1-SNAPSHOT-->
并将target/classes和target/test-classes下的所有文件组装到target/demo_WebService2-0.0.1-SNAPSHOT/WEB-INF/classes下-->
将D:\WorkSpaces\eclipse2016\demo_WebService2\src\main\webapp目录下的除了classes文件夹和lib以外的所有文件拷贝到该目录下-->
将该目录打成war包。
证实:
为了证实猜想,所以在用maven打包之前我将WEB-INF/classes和lib文件加下的内容全部清空或者直接将这2个文件夹删掉。
这就证明了:
打包后的classes里的编译文件不是来自于WEB-INF/classes;
打包后的lib里的jar包不是来自于WEB-INF/lib,而是来自与pom.xml。
2.方式二:使用eclipse的export进行打包
选中项目-->右键-->Export-->选择"WAR File"-->Next;
点击"Browse..."设置war保存位置-->取消勾选项"Optimize for a ..."-->Finish
总结:
项目开发过程中,使用maven对项目打war包;
将项目进行正式部署时,使用eclipse的export对项目打war;
使用maven打的jar包,并不一定是最新,当将项目发布到正式地址时,一定要记得重新打个war包。