12maven部署web工程

  首先创建一个maven打包类型为war的工程

 

创建完项目后,执行下图操作:

 

 

 

 

 然后创建一个测试的Jsp文件,报错是因为还缺servlet-api.jar里面的类。

 

 

 解决报错,有三种方法:

第一种:

项目右键,选择bluid path > configure bluid path

 

 

把tomcat放入到类路径中,因为tomcat自带servlet-api.jar.

第二种:

到maven的远程仓库复制servlet-api.jar的依赖到项目中的pom.xml。

 

 

 

 

 

 然后就完成了,如果还报错,项目右键》maven > update project更新一下。

第三种:

项目右键选择Bluid Path > Configure Bluid Path 

 

 然后到最后一步,把项目部署到服务器上运行,部署方法也有三种。

第一种:

  直接把项目部署在本地的tomcat中运行

在servers中创建tomcat我就省略了。

 

 保存配置后,tomcat右键部署项目进tomcat中。

 

 

  

部署完后启动tomcat

 

 

 

 

 

 然后启动tomcat,如果报错如下图,代表本地tomcat正在运行,需要手动到tomcat安装目录停止tomcat,因为第三种方法使用的是本地的tomcat,如果tomcat本来就开启着,再次在eclipse中启动会报下图的错误。

 

停止本地的tomcat运行

 

 

 

然后在eclipse重新启动tomcat就行了

最后在浏览器中运行项目,如果在浏览器中报404,就重启一下tomcat。

然后再浏览器中运行。

 

 

 第二种:

  把项目打包,然后放在本地tomcat中运行

 

 

 

 修改一下war包的名字,去掉版本号,然后把war包放在本地tomcat中运行

 

 

 第三种:

  在项目的pom中配置部署。

 

 1 <build>    
 2       <finalName>mavenWeb</finalName><!-- 项目名 -->
 3         <plugins>
 4             <plugin>
 5                 <!-- 启动web工程所依赖的servlet容器(tomcat)    注意需要先关闭本地tomcat/或者eclipse中的tomcat,不然会报错 -->
 6                 <groupId>org.codehaus.cargo</groupId><!-- 插件 -->
 7                 <artifactId>cargo-maven2-plugin</artifactId>
 8                 <version>1.4.9</version>
 9                 <configuration>
10                     <container>            
11                         <containerId>tomcat8x</containerId><!--tomcat版本号,命名不能有-存在  -->
12                         <home>D:softTomcat 8.5</home><!--本地tomcat的安装路径  -->
13                     </container>
14                     <configuration>
15                         <type>existing</type>
16                         <home>D:softTomcat 8.5</home><!--校验确认 -->
17                         <!-- 默认值8080 -->
18                         <properties>
19                             <cargo.servlet.port>80</cargo.servlet.port><!--tomcat的端口号  -->
20                         </properties>
21                     </configuration>
22                 </configuration>
23                 <executions>  
24                     <execution>  
25                         <id>cargo-run</id>  
26                         <!-- 生命周期阶段,执行到install的时候           安装到maven本地仓库 -->
27                         <phase>install</phase>  
28                         <goals>  
29                         <!-- 执行 -->
30                             <goal>run</goal>  
31                         </goals>  
32                     </execution>  
33                 </executions>
34             </plugin>
35         </plugins>
36     </build>

配置好后,项目右键选择Run As > maven bluid ... 

 

 第三种方法也是依赖于本地tomcat,所以想要停止tomcat,需要停止本地的tomcat。

总结:三种部署方法对应着不同的需求,如果开发人员兼任测试建议使用第二种部署;

如果有另外的测试人员建议使用第一种,直接打包把war包给测试;

第三种部署适合服务器经验比较好的,一般都是在DOS中部署。

原文地址:https://www.cnblogs.com/unlasting/p/12208907.html