war类型项目创建

一、war类型项目创建

1、新建 Maven project 时选择 packaging 为 war。

 

2、在 webapp 下新建META-INFWEB-INFWEB-INF/web.xml

 

 

3、在 pom.xml 文件中添加 java EE 相关的三个 jar 包

  <scope>设置为 provided 表示 jar 包只在编译期生效,不会打包发布到tomcat中。

<dependencies>
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>javax.servlet-api</artifactId>
      <version>3.0.1</version>
      <scope>provided</scope>
    </dependency>
    <dependency>
     <groupId>javax.servlet.jsp</groupId>
      <artifactId>jsp-api</artifactId>
      <version>2.2</version>
      <scope>provided</scope>
    </dependency>
    <dependency>
      <groupId>jstl</groupId>
      <artifactId>jstl</artifactId>
      <version>1.2</version>
    </dependency>
</dependencies>
4、配置 tomcat 插件
<build>
  <plugins>
    <plugin>
      <groupId>org.apache.tomcat.maven</groupId>
          <artifactId>tomcat7-maven-plugin</artifactId>
          <version>2.2</version>
          <configuration>
        <!-- 设置tomcat端口号 -->
              <port>80</port>
              <!-- 项目发布到tomcat的名称 -->
              <!-- / 把项目发布到tomcat后名称设为 ROOT -->
              <!-- /abc -->
              <path>/</path>
         </configuration>
    </plugin>
  </plugins>
</build>

5、右键项目 --> run as --> Maven build --> Goals 中输入 clean tomcat7:run

二、相关异常

1、直接新建xml文件产生以下异常:

解决方法:更改web.xml文件内容为:

 

 

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns="http://java.sun.com/xml/ns/javaee" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee  http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" 
    id="WebApp_ID" version="2.5">
  <display-name>08-Jsp</display-name>
</web-app>

 

2、servlet tomcat 冲突

 

 

 

 

 

 解决方法:servlet 加上 <scope>provided</scope> 标签

3、jsp tomcat 冲突

 

 

 

 

 

 解决方法:jsp 加上 <scope>provided</scope> 标签

4、[ERROR] Failed to execute goal org.apache.maven.plugins:maven-clean-plugin:2.5:clean (default-clean) on project MavenStudy_6_war: Failed to clean project: Failed to delete C:\Users\lenovo\eclipse-workspace\MavenStudy_6_war\target\tomcat\logs\access_log.2020-03-19 -> [Help 1]

原因:上一次的Maven build没有关闭

解决方法:养成及时关闭服务器的习惯。关闭上一次的Maven build,重新运行。

 

 

 

 

 

posted @ 2020-03-19 17:10  Astral  阅读(325)  评论(0编辑  收藏  举报