Maven環境搭建
項目管理利器——maven http://www.imooc.com/learn/443
---2-1 maven下載---------------------------------
maven下載:http://maven.apache.org/download.cgi
Binary zip archive: apache-maven-3.5.0-bin.zip
Source zip archive: apache-maven-3.5.0-src.zip
++
apache-maven-3.5.0
\bin :bin目錄包含mvn的運行腳本
\boot 類加載器的框架(maven用它來加載自己的類庫)
\conf 配置文件 如settings.xml
\lib 類庫 maven和第三方以來的類庫
----------------------------------------------------------------------
配置環境變量:
用戶變量:多人公用時在此設置。
系統變量:私人使用電腦時就可以設在此處
1.添加:
變量名:M2_HOME 值:maven安裝目錄
2. Path:
添加";%M2_HOME%\bin"
驗證:cmd中輸入mvn -v 顯示版本信息(echo %M2_HOME% 顯示該變量的值)
---2-2 maven快速入門-------------------------------------------------------------------
maven目錄結構
src
-main
-java
-package
-test
-java
-package
pom.xml 在根目錄下配置pom.xml
example:
1.HelloWorld.java
D:\java\code\maven01\src\main\java\com\imooc\maven01\model
package com.imooc.maven01.model; public class HelloWorld { public String sayHello() {return "HelloWorld !"; } }
2.HelloWorldTest.java
D:\java\code\maven01\src\test\java\com\imooc\maven01\model
package com.imooc.maven01.model; import org.junit.*; import org.junit.Assert.*; public class HelloWorldTest { @Test public void testHello() { Assert.assertEquals("HelloWorld !",new HelloWorld().sayHello()); } }
3.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.iooc</groupId><!--groupId項目包名--> <artifactId>maven01-model</artifactId><!--artifactId模塊名;建議使用項目名--> <version>0.0.1-SNAPSHOT</version><!--快照版本--> <dependencies> <dependency> <!--junit依賴--> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.10</version> </dependency> </dependencies> </project>
cmd:
1.進入maven01 項目根目錄中 cd url
2.mvn compile 對項目進行編譯
編譯結果
D:\java\code\maven01>mvn compile [INFO] Scanning for projects... [INFO] [INFO] ------------------------------------------------------------------------ [INFO] Building maven01-model 0.0.1-SNAPSHOT [INFO] ------------------------------------------------------------------------ [INFO] [INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ maven01-model --- [WARNING] Using platform encoding (GBK actually) to copy filtered resources, i.e. build is platform dependent! [INFO] skip non existing resourceDirectory D:\java\code\maven01\src\main\resources [INFO] [INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ maven01-model --- [INFO] Changes detected - recompiling the module! [WARNING] File encoding has not been set, using platform encoding GBK, i.e. build is platform dependent! [INFO] Compiling 1 source file to D:\java\code\maven01\target\classes [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 1.857 s [INFO] Finished at: 2017-06-27T15:36:46+08:00 [INFO] Final Memory: 13M/161M [INFO] ------------------------------------------------------------------------ D:\java\code\maven01>
3.mvn test 運行測試用例
自動生成target文件夾
\target
\classes 字節碼文件
\maven-status
\surefire-reports 生成的測試報告
\test-classes
------------------------------------------------------- T E S T S ------------------------------------------------------- Running com.imooc.maven01.model.HelloWorldTest Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.102 sec Results : Tests run: 1, Failures: 0, Errors: 0, Skipped: 0 [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 19.230 s [INFO] Finished at: 2017-06-27T15:39:16+08:00 [INFO] Final Memory: 17M/140M [INFO] ------------------------------------------------------------------------
5.mvn package
在target目錄中生成maven01-model的jar
INFO] Building jar: D:\java\code\maven01\target\maven01-model-0.0.1-SNAPSHOT.jar [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 13.251 s [INFO] Finished at: 2017-06-27T15:44:13+08:00 [INFO] Final Memory: 13M/123M [INFO] ------------------------------------------------------------------------
---------------------------------------------------------------------------
1.cmd 中cd到maven項目的根目錄。
2.maven的運行
mvn compile 編譯 mvn test 運行test包下面的代碼 生成target文件夾 其中classes中為編譯後的字節碼文件
默認在根目錄生成target目錄 mvn package 給整個項目打包,在target目錄下生成jar文件(文件類型可用pom中的packaging標簽自己定義)
----------------------------------------------------------------------
----------------------------------------------------------------------
----------------------------------------------------------------------
Maven環境搭建