Idea中使用Maven(创建java工程&创建web工程&导入maven工程)

1.配置

默认的是这样的:

 也可以改成自己的配置

 2.创建java工程

 

 

 

 创建maven工程之后,会出现main和test

 分别在main/java和test/java下面创建Hello.java和helloTest.java

写代码:

 Hello.java

package com.xxx.maven;

public class Hello {
    public String sayHello(String name) {
        return "Hello " + name + "!";
    }
}

helloTest.java

package com.xxx.com;

import com.xxx.maven.Hello;

import org.junit.Test;

public class helloTest {
    @Test
    public void testHello() {
        Hello hello = new Hello();
        String maven = hello.sayHello("Maven");
        System.out.println(maven);
    }
}

  写好之后,再点击Maven的生命周期中的test,就有输出结果了

点击package就可以打包,点击clean会把target整个文件夹清除掉

 

3.创建web工程

web工程的打包方式是war包,需要在pom.xml中

 在模块中添加web工程的目录

 

 

注意此处Deployment Descriptors的path,要和将来写代码的目录在同一级,不然会在package的时候会报错

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-war-plugin:2.2:war (default-war) on project spring2: Error assembling WAR: webxml attribute is required
(or pre-existing WEB-INF/web.xml if executing in update mode) -> [Help 1]

D:\workspace_idea\maven_workspace\MavenWeb\WEB-INF\web.xml

 这样就生成了web目录

 接下来就要让web工程在tomcat上跑起来

设置tomcat

 在Tomcat官网下载

https://tomcat.apache.org/download-70.cgi

我下载了7.0的

 解压后,导入

 配置artifacts

但是有时候是没有的,Deployment下面是空的

 

注意,要点击那个+,出现下面图片右边的,才算添加tomcat成功

 

点击启动按钮

 如果出现下面的问题,说明路径不对

 

 

 这样就可以配置成功

 

 4.导入已有的maven工程

选择已有的maven工程Hello

 

点击finish->OK

这样就把Maven工程文件导入进来了。

 4.结合spring创建web工程

项目结构:

 在pom.xml中添加该路径

    <build>
        <finalName>simple-webapp</finalName>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-war-plugin</artifactId>
                <version>3.2.0</version>
                <configuration>
                    <webXml>webapp\WEB-INF\web.xml</webXml>
                </configuration>
            </plugin>
        </plugins>
    </build>

原因:

maven的web项目默认的webroot是在src\main\webapp。如果在此目录下找不到web.xml就抛出以上的异常。

在pom.xml中添加

    <!--web工程的打包方式war-->
   <packaging>war</packaging>

 

posted @ 2020-09-22 11:28  GumpYan  阅读(366)  评论(0编辑  收藏  举报