Java全棧程序員之06:IDEA中MAVEN項目依賴及運行


         MAVEN已經成為事實上的企業項目開發中的項目類型。無論是IDEA還是Eclipse,都已經默認支持創建MAVEN項目。嚴格意義上來說,MAVEN不是一種新的JavaEE項目類型。它凌駕於所以的項目類型上面,是對之前項目的一種“管理”。如果我們創建了MAVEN項目,那么會很方便的干這兩件事情:

        1:管理所有的依賴包。其中一個例子是,以往我們要引入一個第三方的jar包,需要把該jar包從網上(或者其它地方)下載回來,然后引入到項目中。而現在,我們只要在pom文件中引入改jar包的標識符,然后maven插件會自動幫我們下載該jar包並引入到項目中來。

        2:方便我們編譯、執行、部署項目。

        且看maven項目在IDEA中如何運行。

1.創建parent項目

        我假設你的項目,不會簡單到只有一個Project(在IDEA中更多的稱之為Module),所遇,基於一般的做法,我們首先會創建一個父項目。

        該父項目會定義一些通用配置,比如會整個系統所使用的JDK版本,或者引入的通用的jar包的版本。

        選擇new project,如下,

        Next,在此頁面,定義groupid和標識符和版本號,

        Next,定義項目名,module名。注意,module名很重要,我們定義為:test01.parent,

        接下來,可以enable auto-import,

        Pom文件就是配置文件,是parent中我們唯一需要動的文件,在這個文件中,我們目前要做的就是把項目的JDK版本定義為1.10,如下,

<?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.zuikc</groupId>

    <artifactId>test01</artifactId>

    <packaging>pom</packaging>

    <version>1.0.1</version>

    <properties>

        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

        <maven.compiler.encoding>UTF-8</maven.compiler.encoding>

        <java.version>1.10</java.version>

        <maven.compiler.source>1.10</maven.compiler.source>

        <maven.compiler.target>1.10</maven.compiler.target>

    </properties>

</project>

2.創建工具項目

        有了parent,讓我們創建工具項目吧。

        Next。注意,下圖紅框中的設置是自動帶過來的,一般不需要動。Module的標識取名為test01.common。一般這種項目,在實際的工作中,是用來放置各種工具類的。

        Next,

        Finish之后,可以看到當前module的pom文件中,指定了parent。

        為了演示期間,讓我們隨便創建一個很簡單的工具類吧,這個工具類中,只有一個加法方法。

        如下,

package com.zuikc.test01.common;

public class Mather {

    public static final int add(int a, int b){

        return a+b;

    }

}

3.創建UI層項目

        接下來,讓我們創建UI層。當然,實際工作中,可能你的設計是標准的三層架構,那無非也就是多創建幾個module。另外,UI層可能是一個web project,也有可能是像本例一樣是個console。那都無所謂,MAVEN項目的一個優點是,你甚至可以隨意將一個console項目變成一個web project。

        讓我們繼續創建UI層,

        Next,

        Next,

        Finish。

        在本項目的pom文件中,我們要設置自己依賴了common,所以,我們要配置下圖紅框中的內容。

        現在,為了測試期間,讓我們創建一個main類,

        代碼如下,

package com.zuikc.test01.ui;

import com.zuikc.test01.common.Mather;

public class Sample01 {

    public static void main(String[] args) {

        int re = Mather.add(1,2);

        System.out.println(re);

    }

}

4.exec-maven-plugin插件

        要以MAVEN的形式來運行console項目,我們需要添加exec-maven-plugin插件。怎么添加呢?

        很簡單的,只要在UI項目的pom中增加如下,

    <build>

        <plugins>

            <plugin>

                <groupId>org.codehaus.mojo</groupId>

                <artifactId>exec-maven-plugin</artifactId>

                <version>1.6.0</version>

                <executions>

                    <execution>

                        <goals>

                            <goal>exec</goal>

                        </goals>

                    </execution>

                </executions>

            </plugin>

        </plugins>

    </build>

        看圖,

        當保存之后,maven就會從中央倉儲(mvnrepository.com)中去下載這個插件(其實主要就是一些jar包)到本地。

5.配置運行console

        打開配置,

        點擊+號,增加一個maven配置,

        像如下進行配置,

        保存后進行run,

        第一次執行,會出現download,

        這些down下來的文件是在哪呢?是在一個叫做maven本地倉儲的地方,它默認就是idea安裝目錄的plugs下,如下所示:

        Ok,回過頭來說,如果執行成功就會出現下面的輸出。

6.Maven clean和install

        如果我們run的時候找不到common。就說明我們的common項目還沒安裝到maven的本地倉儲中。那該怎么辦呢?當然是install了。

        有兩種方式,可以打開maven的操作工作台,如下,

        如圖,

        每個項目都有自己的lifecycle,可以在這個工作台中進行clean、編譯或者install等。依次,我們install parent、common、ui。成功之后,我們就可以在本地倉儲中看到自己編寫的項目咯。

        感謝關注“碼農星球”。本文版權屬於“碼農星球”。我們提供咨詢和培訓服務,關於本文有任何困惑,請關注並聯系我們。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM