下載maven的bin,在apache官方網站能夠下載。html
下載下來以後,解壓,找個路徑放進去, 把bin的位置設在環境變量裏,新建環境變量MAVEN_HOMEjava
在PATH里加入maven的bin的路徑web
因爲Maven依賴Java運行環境,所以使用Maven以前須要配置Java的運行環境。下載並安裝JDK,配置JDK的環境變量JAVA_HOME,不然maven將沒法使用.
apache
配置完畢後,在Windows命令提示符下,輸入mvn -v測試一下,配置成功顯示如圖:api
找到 Maven 下的 conf 下的 settings.xml 配置文件,個人是在 D:\Server\maven\conf\settings.xmltomcat
Maven 的倉庫默認是放在本地用戶的臨時文件夾下面的 .m2 文件夾下的 repository 下,個人是在 C:\Users\admcnm\.m2\repository 目錄下,如今咱們來修改將它指定到咱們本身的路徑下,我如今要將倉庫指定到 D:\Repositories\Maven 目錄下,只須要將上面註銷的本地倉庫打開,而後把相應的路徑值寫到裏面去就好了:app
檢查 eclipse 的 maven 插件是否安裝成功:Window-->Preferences。Eclipse kepler或者更高的版本自帶內置集成了Maven插件eclipse
1. 點擊 Add 按鈕,選到你本機安裝 maven 的路徑值webapp
2. 點擊 Browse 按鈕,選到你 maven 的 setting.xml 配置文件,而後點擊 OK,這樣就完成了 eclipse maven 插件的配置。maven
a) 本地Maven鏈接互聯網
若是你的機器能夠聯網,Maven默認鏈接本身的倉庫地址,須要其餘倉庫地址自行添加。
b) 本地Maven鏈接Nexus倉庫
Nexus倉庫能夠鏈接外網,或者手動上傳JAR到Nexus倉庫,Maven再經過鏈接Nexus的方式實現下載JAR。
中間通過此步驟
cannot change version of project facet Dynamic Web Module to 3.0 該問題見文末尾總結。
執行mvn:install(或者能出發執行pom.xml裏面build邏輯的命令)
<build> <finalName>SpringActivemq</finalName> <pluginManagement> <plugins> <plugin> <groupId>org.eclipse.m2e</groupId> <artifactId>lifecycle-mapping</artifactId> <version>1.0.0</version> <configuration> <lifecycleMappingMetadata> <pluginExecutions> <pluginExecution> <pluginExecutionFilter> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <versionRange>[2.0,)</versionRange> <goals> <goal>copy-dependencies</goal> </goals> </pluginExecutionFilter> <action> <ignore /> </action> </pluginExecution> </pluginExecutions> </lifecycleMappingMetadata> </configuration> </plugin> </plugins> </pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.1</version> <configuration> <source>1.7</source> <target>1.7</target> <encoding>UTF-8</encoding> <showWarnings>true</showWarnings> </configuration> </plugin> <!-- 同步jar到lib下 --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <executions> <execution> <id>copy-dependencies</id> <phase>test</phase> <goals> <goal>copy-dependencies</goal> </goals> <configuration> <outputDirectory> src/main/webapp/WEB-INF/lib </outputDirectory> </configuration> </execution> </executions> </plugin> </plugins> </build>
1.不在須要引入tomcat(servlet-api.jar)
2.pom中配置引入servlet-api,期中注意<scope>provided</scope>(依賴servlet-api,打成war包會跟tomcat自帶的包[servlet-api]衝突。因此用provided編譯、測試時有用,打包發佈不包含。)
<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/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.xxx</groupId> <artifactId>xxxCommons</artifactId> <packaging>war</packaging> <version>0.0.1-SNAPSHOT</version> <name>xxxCommons Maven Webapp</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> <!-- 配置servlet-api依賴 -- > <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> <scope>provided</scope> </dependency> </dependencies> <build> <finalName>HillCommons</finalName> <plugins> <!-- tomcat啓動插件 --> <plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin</artifactId> <version>2.2</version> </plugin> </plugins> </build> </project>
3.插件啓動tomcat
1.在tomcat中的conf的tomcat_users.xml中建立管理用戶和密碼,通常選manager-script,在pom.xml中的tomcat插件中用text,不然可能出現403錯誤
<role rolename="manager-gui"/> <role rolename="manager-script"/> <role rolename="manager-jmx"/> <role rolename="manager-status"/> <role rolename="manager-text"/> <role rolename="admin-gui"/> <user username="admin" password="admin" roles="manager-gui,manager-script,manager-jmx,manager-status,manager-text,admin-gui"/>
2.pom.xml 配置tomcat插件
<dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> <dependency> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin</artifactId> <version>2.2</version> <exclusions> <exclusion> <artifactId>junit</artifactId> <groupId>junit</groupId> </exclusion> </exclusions> </dependency> </dependencies> <build> <finalName>maven-web-test</finalName> <pluginManagement> <plugins> <plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin</artifactId> <version>2.2</version> <configuration> <url>http://localhost:8080/manager/html</url> <username>admin</username> <password>admin</password> </configuration> </plugin> </plugins> </pluginManagement> </build>
3.配置tomcat部署命令
1)問題描述:使用Eclipse自帶的Maven插件建立Web項目時報錯
離線解決方式:
1.http://maven.oschina.net/content/groups/public/org/apache/maven/archetypes/maven-archetype-quickstart/ 下載最新版maven-archetype-quickstart-1.1.jar
2.命令行到下載目錄下執行mvn install:install-file -DgroupId=org.apache.maven.archetypes -DartifactId=maven-archetype-quickstart -Dversion=1.1 -Dpackaging=jar -Dfile=maven-archetype-quickstart-1.1.jar
2)cannot change version of project facet Dynamic Web Module to 3.0
網上搜下:http://my.oschina.net/cloudcoder/blog/362949
3)eclipse中使用maven插件的時候,運行run as maven build的時候報錯-Dmaven.multiModuleProjectDirectory system propery is not set. Check $M2_HOME environment variable and mvn script match.
能夠設一個環境變量M2_HOME指向你的maven安裝目錄MAVEN_HOME=D:\Program Files\apache-maven-3.3.3而後在Window->Preference->Java->Installed JREs->Edit在Default VM arguments中設置- Dmaven.multiModuleProjectDirectory=$MAVEN_HOME
4)兩個不一樣版本開發IDE(例如兩個不一樣版本Eclipse都自帶集成的mavn插件,但他們因爲集成的Mavn插件版本不一樣是的本地mavn plugins下的jar版本也不全相同,致使只有個Eclipse的mavn環境能正常使用,另外一個jar版本不匹配)