在旧项目的基础上新建maven项目
新安装的idea中创建项目
推荐方案
选择maven项目,配置好jdk的安装路径后直接点击next,创建的项目默认有maven默认目录
创建的项目结构
选择maven,在project sdk中配置你的jdk的版本,new…可以帮助你配置jdk,勾选 create from archetype,显示你可以创建的项目模板
GroupId 中输入我们自定义的域名,
ArtifactId 为我们系统名称,我创建的是一个管理系统
打开pom.xml文件看见的配置
<?xml version="1.0" encoding="UTF-8"?>
<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>com.*</groupId>
<artifactId>ManagementSystem</artifactId>
<version>1.0-SNAPSHOT</version>
</project>
以上是pom.xml的基本配置,还需要添加其他配置
配置pom.xml时,首先要统一源代码的编码方式,否则使用Maven编译源代码的时候就会出现相关警告,一般情况下,我们都使用UTF-8进行编码,配置语法
<properties>
<project.build.sourceEncoding>UTF-8project.build.sourceEncoding>
properties>
除了需要统一源代码外,还需要统一源代码与编译版本的jdk版本,本人项目使用的是jdk 1.7进行的开发,配置语法:
<build>
<plugins>
<plugin>
<groupId> org.apache.maven.plugins groupId>
<artifactId> maven-compiler-plugin artifactId>
<version> 3.3 version>
<configuration>
<source> 1.6 source>
<target> 1.6 target>
configuration>
plugin>
plugins>
build>
*** 注 所有的plugin都需要添加到build/plugins标签下,maven插件或出现的maven依赖都来自于Maven中央仓库。中央仓库连接’’'url http://search.maven.org/ ```
目前,在pom.xml中还没有任何的Maven依赖(dependency),随后会添加一些java web所需的依赖,只不过在添加这些依赖之前,有必要先将这个Maven项目调整为Web项目结构。
1.在main目录下,添加webapp目录。
2.在webapp目录下,添加WEB-INF目录。
3.在WEB-INF目录下,添加web.xml文件。
idea显示一下提示
表示idea已经识别出我们使用了web框架,需要配置才能使用。单击“Configure”,看到确认框,单击“OK",项目就变成了,web项目。
本程序使用的是servlet 3.0框架,在web.xml添加以下代码:
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0">
web-app>
实际上,使用Servlet 3.0 框架是可以忽略web.xml文件,因为Servlet无须在web.xml中配置,只需通过java注解的方法来配置即可。
由于web项目是需要打包的,因此必须在pom.xml文件中设置’packaging’为war(默认为jar),配置如下:
<packaging>warpackaging>
接下来配置java web所需的Servlet,JSP,JSTL等依赖,添加如下配置:
<dependencies>
<dependency>
<groupId>javax.servletgroupId>
<artifactId>javax.servlet-apiartifactId>
<version>3.1.0version>
<scope>providedscope>
dependency>
<dependency>
<groupId>javax.servlet.jspgroupId>
<artifactId>jsp-apiartifactId>
<version>2.2version>
<scope>providedscope>
dependency>
<dependency>
<groupId>javax.servletgroupId>
<artifactId>jstlartifactId>
<version>1.2version>
<scope>runtimescope>
dependency>
<dependencies>