一、爲什麼要用Maven?
maven可以統一管理jar包。
使用maven後,可以在pom.xml中導入jar包的座標,maven會自動下載jar包。
二、Maven的安裝和配置
參考易佰教程:https://www.yiibai.com/maven/maven_environment_setup.html
(1)修改默認本地倉庫的位置
如果您不配置,默認會在如下位置存放從遠程下載到的包:
從中央倉庫下載的jar包,都會統一存放到本地倉庫中。我們需要配置本地倉庫的位置。
打開maven安裝目錄,打開conf目錄下的setting.xml文件。
可以參照下圖配置本地倉儲位置。
(2)修改默認中央倉庫的地址
當構建一個Maven項目時,首先檢查pom.xml文件以確定依賴包的下載位置,執行順序如下:
1、從本地資源庫中查找並獲得依賴包,如果沒有,執行第2步。
2、從Maven默認中央倉庫中查找並獲得依賴包(http://repo1.maven.org/maven2/),如果沒有,執行第3步。
3、如果在pom.xml中定義了自定義的遠程倉庫,那麼也會在這裏的倉庫中進行查找並獲得依賴包,如果都沒有找到,那麼Maven就會拋出異常。
修改默認中央倉庫地址
三、IDE中使用Maven(IDEA或Eclipse)
(1)在IDEA中配置maven
打開IDEA—File—Settings
四、在IDEA中創建Maven項目
打開IDEA,選擇File --> New --> Project
**注意:**通過maven-archtype-webapp,創建的項目結構,還缺少一些文件夾,比如java,我們手動創建
同樣在main下新建test測試文件夾,再在此文件夾下新建Java測試源碼文件夾和resource測試資源文件夾
五、在Maven的web項目中導入常見依賴及插件
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.ambow</groupId>
<artifactId>maven03</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>war</packaging>
<name>maven03 Maven Webapp</name>
<!-- FIXME change it to the project's website -->
<url>http://www.example.com</url>
<!--配置信息-->
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.7</maven.compiler.source>
<maven.compiler.target>1.7</maven.compiler.target>
</properties>
<!--依賴管理-->
<dependencies>
<!--1.tomcat相關的jar(jsp,servlet)-->
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.1</version>
<scope>provided</scope> <!--注意:要指定scope爲provided,表示只在編譯和測試的時候用,發佈時不用-->
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope> <!--注意:要指定scope爲provided,表示只在編譯和測試的時候用,發佈時不用-->
</dependency>
<!--2.jstl相關的jar-->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
<!--使用jstl的1.2版本,standard不是必須的-->
<!-- <dependency>
<groupId>taglibs</groupId>
<artifactId>standard</artifactId>
<version>1.1.2</version>
</dependency>-->
<!--3.mysql相關的jar-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.32</version>
</dependency>
<!--4.文件上傳的jar-->
<!--5.其他的jar-->
</dependencies>
<!--構建管理-->
<build>
<plugins>
<!-- tomcat插件控制 -->
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<!--端口控制-->
<port>8089</port>
<!--項目路徑控制意味着http://localhost:8080/abc-->
<path>/maven03</path>
<!--編碼-->
<uriEncoding>UTF-8</uriEncoding>
</configuration>
</plugin>
</plugins>
</build>
</project>
注意:
EL在jsp中如果不能解析,需要在page指令中添加isELIgnored=“false”,代碼如下:<%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" %>