Java語言學習2—Maven版Hellow World

來源:互聯網
上載者:User

剛開始學Java時,總是非常奇怪,為什麼一些開源軟體總是那麼變態,使用Ant或Maven來編譯器,用Eclipse不好嗎?後來才漸漸發現,Eclipse的工程,由於每個人機器中Eclipse的配置可能不同,所以可能造成工程匯入失敗,而採用Ant或Maven則可以在很大程度上避免這種情況的發生,尤其是Maven,這個工具可以使你建立與工程開發人員相同的開發環境,自動處理Jar包依賴,把我們從尋找下載依賴Jar包的簡單勞動中解放出來,因此熟練掌握Maven對於深入掌握Java語言是非常有協助的。

在這篇文章中,我將搭建起一個基於Maven的開發環境,採用Log4j輸出Hello World,同時探討一個怎樣在Eclipse中找開Maven的工程。

首先,下載最新版本Maven:http://maven.apache.org/download.html ,目前的最新版本為3.0.4。下載二進位版,將其進行解壓到某個目錄下即可。

建立mproj目錄,在下面是利用Maven建立一個工程:

set JAVA_HOME=d:\jdk7u6maven_dir\bin\mvn archetype:generate -DarchetypeGroupId=org.apache.maven.archetypes -DgroupId=com.bjcic.learn -DartifactId=myapp

初次運行時,由於需要從網路上下載一些東西來建立環境,所以需要一些時間,還會提示一些問題,所有問題直接斷行符號即可。完成後,將在目前的目錄下建立myapp目錄。並且在該目錄中產生了最重要的pom.xml檔案,該檔案是mavon項目最重要的設定檔。

由於我們需要使用log4j這樣的三方庫,所以我們需要在mproj\myapp\pom.xml中添加依賴:

<dependencies>    <dependency>      <groupId>junit</groupId>      <artifactId>junit</artifactId>      <version>3.8.1</version>      <scope>test</scope>    </dependency>      <dependency>        <groupId>org.apache.logging.log4j</groupId>        <artifactId>log4j-api</artifactId>        <version>2.0-beta3</version>        <scope>compile</scope>      </dependency>      <dependency>        <groupId>org.apache.logging.log4j</groupId>        <artifactId>log4j-core</artifactId>        <version>2.0-beta3</version>        <scope>compile</scope>      </dependency>  </dependencies>

其中junit為系統為我們產生的,log4j是我們自己添加的。

進入mproj\src\main目錄,建立resources目錄,並編譯log4j所需要的設定檔log4j2.xml:

<?xml version="1.0" encoding="UTF-8"?><configuration>  <appenders>    <Console name="STDOUT" target="SYSTEM_OUT">      <PatternLayout pattern="%d %-5p [%t] %C{2} (%F:%L) - %m%n"/>    </Console>  </appenders>  <loggers>    <logger name="org.apache.log4j.xml" level="info"/>    <root level="debug">      <appender-ref ref="STDOUT"/>    </root>  </loggers></configuration>

我們建立一個測試類別com.bjcic.learn.AppUtil.java代碼如下所示:

package com.bjcic.learn;import org.apache.logging.log4j.LogManager;import org.apache.logging.log4j.Logger;public class AppUtil {    private static Logger logger = LogManager.getLogger(AppUtil.class.getName());    public void runUtil() {        logger.info("Hello World");    }}

在系統為我們產生的src/main/java/com/bjcic/learn/App.java中添加如下代碼:

public static void main( String[] args )    {        AppUtil appUtil = new AppUtil();        appUtil.runUtil();    }

現在就一切都配置正常了,可以開始編譯及運行了。

首先,編譯工程:

%maven_home%\bin\mvn compile

系統會下載一些依賴,最後會提示編譯成功。接著我們需要安裝該工程(為了便於使用Maven來運行):

%maven_home%\bin\mvn install

最後是運行:

%maven_home%\bin\mvn exec:java -Dexec.mainClass=com.bjcic.learn.App -Dexec.args="p1 p2"

至此利用Maven 3編譯運行一個工程就全部完成了,但是始終在命令列下工作,沒有文法提示是一個比較痛苦的事情,因此Maven提供了將項目轉為Eclipse工程的功能。

%maven_home%\bin\mvn eclipse:eclipse

這樣就可以在eclipse中直接開啟了。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.