一、安裝
首先maven的配置安裝非常簡單:將下載下來的壓縮包解壓之后將bin目錄的路徑加入到path環境變量下即可,使用mvn –version
可以驗證。
二、手工演示maven構建java項目
這里我們先手工的創建maven工程
我們先新建一個目錄用來存放maven工程E:\javaWeb\maven\maven-pro
。然后新建一個01目錄,這個目錄就是我們的工程目錄,而相關的的java文件必須放在此工程下的src\main\java
目錄中。新建一個java文件
Hello.java
:
package cn.edu.zttc.hello;
public class Hello{
public String sayHello(String name){
return "Hello:" + name;
}
public static void main(String[] args){
System.out.println("Hello World");
}
}
注意:這里我們需要將此文件放在01\src\main\java\cn\edu\zttc\hello
目錄下(根據包名),當然不存在的目錄需要我們手工新建出來。
- 配置一個
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>cn.edu.zttc.maven.hello</groupId>
<!--配置項目的一個模塊-->
<artifactId>hello-first</artifactId>
<!--版本信息:這是一個快照版本-->
<version>SNAPSHOT-0.0.1</version>
</project>
這樣我們就配置好了一個java項目的基本信息。
編譯
使用命令mvn compile
進行編譯,此時maven就會去中央倉庫下載所需要的文件(如jar包)。下載下來的文件默認會放在C:\Users\yj\.m2
目錄中,當然之后我們可能會給maven配置一個本地倉庫,那樣就不需要每次都進行下載。-
配置一個本地倉庫
下載的內容在C:\Users\yj\.m2
中,但是為了精確控制maven下載下來的文件,我們在E:\maven
中新建了一個文件夾maven\repository
(完整路徑是:E:\maven\maven\repository
),專門用來存放maven下載的文件。而這里我們首先需要對maven安裝目錄中的conf
文件夾中的settings.xml
對本地路徑進行配置:
1
然后將此文件復制一份到E:\maven\maven
中。這里我們的本地倉庫中什么都沒有,直接將之前下載在C:\Users\yj\.m2
中的repository
中的所有文件全部拷貝到本目錄。這樣maven會首先在本地倉庫中進行尋找所需的依賴文件,如果本地沒有才會去遠程倉庫中下載。 測試
編譯之后在工程下會多出一個target
的目錄,這個目錄中存放的就是編譯好了的文件。現在我們編寫一個測試文件TestHello.java
(放在E:\javaWeb\maven\maven-pro\01\src\test\java\cn\edu\zttc\hello
):
package cn.edu.zttc.hello;
import org.junit.*;
import static junit.framework.Assert.*;
import cn.edu.zttc.hello.*;
public class TestHello{
@Test
public void testHello(){
Hello h = new Hello();
assertEquals( h.sayHello("tom"), "Hello:tom");
}
}
注意:路徑的后半部分是根據包名而定的。
同時,顯然此測試類需要用到junit的相關包,所以我們需要在pom.xml
文件中配置junit:
<?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>cn.edu.zttc.maven.hello</groupId>
<!--配置項目的一個模塊-->
<artifactId>hello-first</artifactId>
<!--版本信息:這是一個快照版本-->
<version>SNAPSHOT-0.0.1</version>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.10</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
說明:這里暫時不要管如何配置,我們先對maven有個直觀的感受。
之后我們在工程01目錄下運行命令:mvn test
此時我們會發現在target目錄中多出了一些測試報告之類的文件,我們可以查看測試結果。當然我們如果使用命令:mvn clean
可以將編譯的文件全部刪掉。
打包
我們使用命令:mvn clean package
。這個命令就是先清除之前的編譯文件然后再次編譯。同時還會給我們將本工程的本模塊打成一個jar包。
然后我們再看命令:mvn clean install
這個命令就是清理之前的文件,再次編譯并將打好的包發到本地倉庫中。這里注意:將打好的包發布到本地倉庫中之后我們在其他項目中就可以使用此包了。現在在
E:\javaWeb\maven\maven-pro
中新建另一個工程02。目錄結構和之前的一樣,這里不再說明。然后我們編寫一個java文件World.java
:
package cn.edu.zttc.world;
//這里我們是導入的之前的工程(01)
import cn.edu.zttc.hello.*;
public class World{
public static void main(String[] args){
Hello h = new Hello();
h.sayHello("Jerry");
}
}
- 同時這里需要用到01工程的內容,所以我們需要在本工程的配置文件
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>cn.edu.zttc.maven.hello</groupId>
<artifactId>hello-second</artifactId>
<version>SNAPSHOT-0.0.1</version>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.10</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>cn.edu.zttc.maven.hello</groupId>
<artifactId>hello-first</artifactId>
<version>SNAPSHOT-0.0.1</version>
<scope>complie</scope>
</dependency>
</dependencies>
</project>
- 之后我們使用命令:
mvn package
這樣就打好一個包了,這是如果我們的01工程中Hello.java
文件中增加了一個方法:
public String hello(){
return “Hello”;
}
這時我們只需要使用命令:mvn clean install
重新清理、編譯、打包、發布。在02工程中我們就可以直接使用此方法:h.hello();
然后再使用命令:mvn clean package
即可。
- 但是很顯然,使用這種方式新建一個項目太過于麻煩,那maven為我們提供了一個工具,比如我們現在新建一個項目03。進入03,然后使用命令:
mvn archetype:generate
幫我們新建項目的骨架。
2
碰到這種情況我們直接回車即可。
3
然后到這里也是直接回車。然后我們需要輸入一些信息,如下:
4
沒有輸入的地方表示直接回車。這樣我們的項目骨架就搭建好了。
三、使用MyEclipse創建mavne工程
-
在MyEclipse中配置本地maven
首先在window-->preference-->Maven4MyEclipse-->Installations-->
添加我們自己的maven:選擇文件路徑E:\maven\maven-3.3.9
。
5
然后我們還要設置自己的倉庫window-->preference-->Maven4MyEclipse-->User Settings
選擇自己的倉庫中的E:\maven\maven\ settings.xml
然后apply-->ok
。
6 -
然后我們新建一個maven項目(工程
user-core
):
New-->Maven Project-->Next-->
7
-->Next-->
輸入我們的模塊名稱,包名等等信息。這樣我們就建立了一個maven項目。
8
之后我們就可以進行相關的開發。