1. 程式人生 > >Maven專案管理(一) IntelliJ Idea+Maven環境搭建與基於命令列的基本使用

Maven專案管理(一) IntelliJ Idea+Maven環境搭建與基於命令列的基本使用

Maven

MAVEN是一個強大的構建工具,ItelliJ Idea 是個強大的IDE,幫他們聯合起來使用,將會是多麼美妙的事情。但是IDE中整合的Maven總使習慣使用命令列的我們頭大,不想為了使用IDE重新學習如何使用怎麼辦,那麼就通過配置環境相容就好了。

Maven的準備

  • 安裝之前通過terminal輸入java -version,檢視是否已經安裝JAVA的JDK和JRE
  • linux下apt-get直接ok,windows下如下配置
  • 首先下載好你需要的maven的版本,確定自己的安裝路徑,下載地址
  • 然後在系統高階設定中新增環境變數,MAVEN_PATH,設定為你的路徑
  • 然後編輯環境變數Path,在最後一個分號後面新增%MAVEN_PATH%\bin;後面加分號是良好的習慣。如果之前的環境變數沒有在結尾加;我們一個要加上來隔開兩個環境變數
  • 最後就是在terminal輸入mvn -v,檢視環境是否配置成功。

IntelliJ Idea 建立Maven專案

這裡寫圖片描述
選擇新增Maven Module,選擇對應java版本,next即可
這裡寫圖片描述
然後一路next,finish即可

IntelliJ Idea的Junit與Maven的路徑相容

因為maven的專案管理是TDD(Test Drive Develop)模式的,所以maven對於測試的路徑有自己的固定格式,但是與Idea的是有區別的,所以利用Idea的Junit Generator外掛自動generate測試類的時候,會出現路徑不恰當的情況,所以我們要通過配置相容這一問題
這裡寫圖片描述


正確的路徑在這裡: ${SOURCEPATH}/../../test/java/${PACKAGE}/${FILENAME}

Maven基本的使用(基於命令列)

我們下面以一個HelloWorld程式開啟局面:

  • 配置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>tech.llin.maven</groupId> <artifactId>llinMaven-learning</artifactId> <version>1.0-SNAPSHOT</version> <!-- 配置對於junit的依賴--> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.7</version> <scope>test</scope> </dependency> </dependencies> <!--新增jar包的可執行功能--> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <version>2.3</version> <executions> <execution> <phase>package</phase> <goals> <goal>shade</goal> </goals> <configuration> <transformers> <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> <mainClass>test.tech.llin.maven.HelloWorld</mainClass> <!--這裡寫執行的主類(main函式所在的位置)--> </transformer> </transformers> </configuration> </execution> </executions> </plugin> </plugins> </build> </project>

然後Junit一類的依賴就自己從中心庫拉到你的專案中,是不是很開心!!!!!

  • 程式的正文部分寫在main/java,程式的測試類寫在test/java,
    首先在java中建立自己專案的包,然後程式碼如下:
package test.tech.llin.maven;

/**
 * Created by llin on 2016/4/6.
 */
public class HelloWorld {

    public static String sayHello(){
        return "hello maven";
    }

    public static void main ( String [] args ){
        System.out.println( sayHello() );
    }
}

然後在這個類中,Alt+Insert快捷鍵生成Junit測試類,因為已經配置好路徑,所以開心地一鍵生成
這裡寫圖片描述
然後制定路徑下會有generate好的測試類:

package test.tech.llin.maven; 

import org.junit.Test; 
import org.junit.Before; 
import org.junit.After;
import org.junit.Assert;

/** 
* HelloWorld Tester. 
* 
* @author <Authors name> 
* @since <pre>���� 6, 2016</pre> 
* @version 1.0 
*/ 
public class HelloWorldTest { 

@Before
public void before() throws Exception { 
} 

@After
public void after() throws Exception { 
} 

/** 
* 
* Method: sayHello() 
* 
*/ 
@Test
public void testSayHello() throws Exception { 
//TODO: Test goes here...
    HelloWorld helloWorld = new HelloWorld();

    String result = helloWorld.sayHello();
    Assert.assertEquals( "hello maven" , result );
}

    /**
* 
* Method: main(String [] args) 
* 
*/ 
@Test
public void testMain() throws Exception { 
//TODO: Test goes here... 
} 


} 
  • 然後
mvn clean compile //清除之前target編譯檔案並重新編譯
mvn clean test //對專案進行測試
mvn clean package //對專案進行打包(因為配置過外掛,所以jar包是可執行的)
mvn clean install //安裝專案,然後就可以使用了
java -jar *.jar //執行

這裡寫圖片描述
那麼好用的maven就配置好了

為了命令列和IDE內部統一,最好配置maven為自己系統環境變數路徑下的maven
這裡寫圖片描述