---------------------------------------
博文作者:迦壹
博客標題:win8.1_64bit+eclipse4.4+maven3.2.3+JDK1.8環境搭建
轉載聲明:可以轉載, 但必須以超鏈接形式標明文章原始出處和作者信息及版權聲明,謝謝合作!
---------------------------------------
目錄:
1、Maven介紹
1.1、什么是Maven?
1.2、Maven對項目的結構要求
1.3、Maven的常用命令
2、Mahout的官網在哪里?
3、在哪里下載?需要哪些組件的支持?
4、如何安裝?
4.1、下載並安裝JDK
4.2、配置JAVA環境變量
4.3、下載Maven
4.4、配置Maven環境變量
4.5、修改Maven配置文件settings.xml
4.6、Eclipse4.4安裝Maven插件
4.7、修改Eclipse4.4的Maven配置
4.8、用Maven創建一個Hello World
4.9、用Maven創建項目的pom.xml簡單介紹
4.10、使用Eclipse打開Maven創建的項目,在控制台輸出Hello World
5、擴展閱讀
目錄:
1、Maven介紹
1.1、什么是Maven?
Maven是基於項目對象模型(POM),可以通過一小段描述信息來管理項目的構建,報告和文檔的軟件項目管理工具。
Maven 除了以程序構建能力為特色之外,還提供高級項目管理工具。由於 Maven 的缺省構建規則有較高的可重用性,所以常常用兩三行 Maven 構建腳本就可以構建簡單的項目。由於 Maven 的面向項目的方法,許多 Apache Jakarta 項目發文時使用 Maven,而且公司項目采用 Maven 的比例在持續增長。
1.2、Maven對項目的結構要求
Maven 使用慣例優於配置的原則 。它要求在沒有定制之前,所有的項目都有如下的結構:
目錄 |
目的 |
${basedir} |
存放 pom.xml和所有的子目錄 |
${basedir}/src/main/java |
項目的 java源代碼 |
${basedir}/src/main/resources |
項目的資源,比如說 property文件 |
${basedir}/src/test/java |
項目的測試類,比如說 JUnit代碼 |
${basedir}/src/test/resources |
測試使用的資源 |
1.3、Maven的常用命令
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
mvn archetype:create 創建Maven項目
mvn archetype:create -DgroupId=idoall.org -DartifactId=helloworld -DpackageName=idoall.org 創建Maven的普通java項目,在命令行使用Maven Archetype 插件
mvn archetype:generate 創建Maven項目
mvn compile 編譯源代碼
mvn deploy 發布項目
mvn
test
-compile 編譯測試源代碼
mvn
test
運行應用程序中的單元測試
mvn site 生成項目相關信息的網站
mvn clean 清除項目目錄中的生成結果
mvn package 根據項目生成的jar
mvn
install
在本地Repository中安裝jar
mvn eclipse:eclipse 生成eclipse項目文件
mvn dependency:resolve 打印出已解決依賴的列表
mvn dependency:tree 打印整個依賴樹
mvnjetty:run 啟動jetty服務
mvntomcat:run 啟動tomcat服務
mvn clean package -Dmaven.
test
.skip=
true
:清除以前的包后重新打包,跳過測試類
mvn
install
assembly:assembly 構建裝配Maven Assembly 插件是一個用來創建你應用程序特有分發包的插件
mvn clean
install
刪除再編譯
|
2、Mahout的官網在哪里?
3、在哪里下載?需要哪些組件的支持?
Maven3.2.3,
點擊下載。
Maven的安裝需要有JDK的支持,這里我們使用JDK1.8,
點擊下載。
Eclipse4.4,
點擊下載。
4、如何安裝?
4.1、下載並安裝JDK
在第3章節中,找到適合你機器版本的JDK,本文使用的是
JDK windows 64bit版本,下載后雙擊安裝,我們安裝到D:\toolkit\jdk1.8
4.2、配置JAVA環境變量
右鍵點擊我的電腦->屬性->遠程設置->高級->環境變量,新CLASSPATH和JAVA_HOME變量,然后編輯Path變量。如下圖:
CLASSPATH=D:\toolkit\jdk1.8
JAVA_HOME=D:\toolkit\jdk1.8
Path變量后面加上%JAVA_HOME%\jre\bin;%JAVA_HOME%\bin
驗證JDK是否正確安裝,新打開1個命令行窗口,輸入java -version,如果能夠看到如下提示,說明安裝成功。
1
2
3
4
|
C:\Users\Administrator>java -version
java version
"1.8.0_20"
Java(TM) SE Runtime Environment (build 1.8.0_20-b26)
Java HotSpot(TM) 64-Bit Server VM (build 25.20-b23, mixed mode)
|
4.3、下載Maven
參考第3章節的下載地址,下載后解壓到D:\toolkit\maven3.2.3中。
4.4、配置Maven環境變量
右鍵點擊我的電腦->屬性->遠程設置->高級->環境變量,新MAVEN_HOME變量,然后編輯Path變量。如下圖:
MAVEN_HOME=D:\toolkit\maven3.2.3
Path變量后面加上%MAVEN_HOME%\bin
驗證Maven是否正確安裝,新打開1個命令行窗口,輸入mvn -version,如果能夠看到如下提示,說明安裝成功。
1
2
3
4
5
6
7
8
|
C:\Users\Administrator>mvn -version
Apache Maven 3.2.3 (33f8c3e1027c3ddde99d3cdebad2656a31e8fdf4; 2014-08-12T04:58:1
0+08:00)
Maven home: D:\toolkit\maven3.2.3\bin\..
Java version: 1.8.0_20, vendor: Oracle Corporation
Java home: D:\toolkit\jdk1.8\jre
Default locale: zh_CN, platform encoding: GBK
OS name:
"windows 8.1"
, version:
"6.3"
, arch:
"amd64"
, family:
"dos"
<br>
|
4.5、修改Maven配置文件settings.xml
在D:\toolkit\maven3.2.3\conf下面,可以看到settings.xml文件,這個就是Maven的配置文件。打開后,修改后的內容如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
<?
xml
version
=
"1.0"
encoding
=
"UTF-8"
?>
<
settings
xmlns
=
"http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi
=
"http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation
=
"http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"
>
<!-- 設置Maven倉庫的存放位置 -->
<
localRepository
>D:/toolkit/maven3.2.3/repo</
localRepository
>
<
pluginGroups
>
</
pluginGroups
>
<
proxies
>
</
proxies
>
<
servers
>
</
servers
>
<
mirrors
>
</
mirrors
>
<
profiles
>
</
profiles
>
</
settings
>
|
#關於settings.xml的其他幾個配置項簡要說明
interactiveMode:如果Maven需要和用戶交互以獲得輸入,則設置成true,反之則應為false。默認為true。
offline:如果不想每次編譯,都去查找遠程中心庫,那就設置為true。當然前提是你已經下載了必須的依賴包。
usePluginRegistry:如果需要讓Maven使用文件plugin-registry.xml來管理插件版本,則設為true。默認為false。
proxies: 多個proxy profile配置。當你在其它平台工作時,能方面切換。
servers: 一些需要驗證的服務器配置,每個服務器都可以有不同配置。
mirros: 倉庫的下載鏡像。
profiles: 項目構建的配置信息,這里會有單獨說明。
activeProfiles:激活的profile列表,按順序生效。
pluginGroups: 如果插件groupId未指明,按該列表下的id去查找。
4.6、Eclipse4.4安裝Maven插件
#打開Eclipse4.4,在上面的菜單欄,點擊Help->Eclipse Marketplace,如下圖:
#在瀏覽器打開:http://www.eclipse.org/m2e/download/,然后同時將install的圖標拖動到Eclipse Marketplace中,會彈出一個窗口,點擊Confirm,后面就繼續下一步,就完成了在線安裝的過程。如下圖:
#安裝完后,會提示讓你重啟Eclipse,重啟后進入初始頁面會發現如下變化,同時點擊菜單欄的Window->Preferences,也可以看到我們現在有了Maven配置項,如下圖:
4.7、修改Eclipse4.4的Maven配置
#配置Eclipse使用我們剛剛安裝的Maven,在菜單欄點擊Window->Preferences,打開參數配置窗口,點擊Mavek->Installations,然后點擊右側的Add,添加我們剛才安裝的Maven路徑,如下圖:
#讓Eclipse的Maven插件使用我們自定義的setting.xml文件,在菜單欄點擊Window->Preferences,打開參數配置窗口,點擊Mavek->User Settings,然后在Global Settings和User Settings中輸入:D:\toolkit\maven3.2.3\conf\settings.xml,如下圖:
4.8、用Maven創建一個Hello World
注意:如果你是第一次運行 maven,你需要 Internet 連接,因為 maven 需要從網上下載需要的插件。
Archetype 可以理解成項目的模型。 Maven 為我們提供了很多種的項目模型,包括從簡單的 Swing 到復雜的 Web 應用。我們選擇默認的 maven-archetype-quickstart,編號是439,然后按兩次回車。
下面帶有2個#號的是我寫的注釋信息,不是命令,如果你要測試的時候可以刪除掉
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
D:\_My_Project\_JAVA>mvn archetype:generate -DgroupId=idoall.org -DartifactId=idoall.org.helloworld -DpackageName=idoall.org -Dversion=1.0-SNAPSHOT
##此處省略一些提示信息
1116: remote -> org.openjdk.jmh:jmh-scala-benchmark-archetype (Generates Scala b enchmarking project, uses JMH bytecode processors)
1117: remote -> org.openjdk.jmh:jmh-simple-benchmark-archetype (Basic archetype
for
simple JMH-driven benchmark.)
Choose a number or apply filter (
format
: [groupId:]artifactId,
case
sensitive contains): 439:
##下面屬性是我們在命令行中用 -D 選項指定的。該選項使用 -Dname=value 的格式。回車確認,就完成了項目的建立
Choose org.apache.maven.archetypes:maven-archetype-quickstart version:
1: 1.0-alpha-1
2: 1.0-alpha-2
3: 1.0-alpha-3
4: 1.0-alpha-4
5: 1.0
6: 1.1
Choose a number: 6:
[INFO] Using property: groupId = idoall.org
[INFO] Using property: artifactId = idoall.org.helloworld
[INFO] Using property: version = 1.0-SNAPSHOT
[INFO] Using property: package = idoall.org
Confirm properties configuration:
groupId: idoall.org
artifactId: idoall.org.helloworld
version: 1.0-SNAPSHOT
package: idoall.org
Y: :
[INFO] ----------------------------------------------------------------------------
[INFO] Using following parameters
for
creating project from Old (1.x) Archetype: maven-archetype-quickstart:1.1
[INFO] ----------------------------------------------------------------------------
[INFO] Parameter: basedir, Value: D:\_My_Project\_JAVA
[INFO] Parameter: package, Value: idoall.org
[INFO] Parameter: groupId, Value: idoall.org
[INFO] Parameter: artifactId, Value: idoall.org.helloworld
[INFO] Parameter: packageName, Value: idoall.org
[INFO] Parameter: version, Value: 1.0-SNAPSHOT
[INFO] project created from Old (1.x) Archetype
in
dir
: D:\_My_Project\_JAVA\ido all.org.helloworld
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total
time
: 36.771 s
[INFO] Finished at: 2014-09-11T14:22:28+08:00
[INFO] Final Memory: 14M
/155M
[INFO] ------------------------------------------------------------------------
|
#此時,Maven已經在D:\_My_Project\_JAVA\idoall.org.helloworld\src\main\java\idoall\org下,為我們創建了一個app.java文件內容如下 :
1
2
3
4
5
6
7
8
9
10
11
12
|
package
idoall.org;
/**
* Hello world!
*
*/
public
class
App
{
public
static
void
main( String[] args )
{
System.out.println(
"Hello World!"
);
}
}
|
#進入到D:\_My_Project\_JAVA\idoall.org.helloworld目錄中,使用maven將項目打包成jar文件,當你第一次運行 maven 的時候,它會從網上的 maven 庫 (repository) 下載需要的程序,存放在你電腦的本地庫 (local repository) 中(我們在4.5章節中設置的路徑),所以這個時候你需要有 Internet 連接。我們在1.2章節中已經提到過,maver會把打包后的JAR文件放到 ${basedir}/target 目錄下
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
D:\_My_Project\_JAVA\idoall.org.helloworld>mvn package
[INFO] Scanning
for
projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building idoall.org.helloworld 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
Downloading: https:
//repo
.maven.apache.org
/maven2/org/apache/maven/plugins/maven
-resources-plugin
/2
.6
/maven-resources-plugin-2
.6.pom
Downloaded: https:
//repo
.maven.apache.org
/maven2/org/apache/maven/plugins/maven-
resources-plugin
/2
.6
/maven-resources-plugin-2
.6.pom (8 KB at 5.4 KB
/sec
)
Downloading: https:
//repo
.maven.apache.org
/maven2/org/apache/maven/plugins/maven
......
##此處省略很多下載信息,只列出重要的成功信息,可以看到building成功后的目錄
[INFO] Building jar: D:\_My_Project\_JAVA\idoall.org.helloworld\target\idoall.org.helloworld-1.0-SNAPSHOT.jar
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total
time
: 01:51 min
[INFO] Finished at: 2014-09-11T14:29:24+08:00
[INFO] Final Memory: 17M
/114M
[INFO] ------------------------------------------------------------------------
|
#運行打包后的idoall.org.helloworld-1.0-SNAPSHOT.jar 如果像下面一樣輸出”Hello World!“,說明你也和我一樣成功了。
1
2
|
D:\_My_Project\_JAVA\idoall.org.helloworld>java -
cp
target
/idoall
.org.helloworld -1.0-SNAPSHOT.jar idoall.org.App
Hello World!
|
4.9、用Maven創建項目的pom.xml簡單介紹
#在使用Maven創建的根目錄中有一個pom.xml文件,它是Maven管理項目約定配置文件,與ant中的build.xml類似。我們的配置文件所在位置為:D:\_My_Project\_JAVA\idoall.org.helloworld\pom.xml,內容如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
<?
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
>idoall.org</
groupId
>
<
artifactId
>idoall.org.helloworld</
artifactId
>
<
version
>1.0-SNAPSHOT</
version
>
<
packaging
>jar</
packaging
>
<
name
>idoall.org.helloworld</
name
>
<
url
>http://maven.apache.org</
url
>
<
properties
>
<
project.build.sourceEncoding
>UTF-8</
project.build.sourceEncoding
>
</
properties
>
<
dependencies
>
<
dependency
>
<
groupId
>junit</
groupId
>
<
artifactId
>junit</
artifactId
>
<
version
>3.8.1</
version
>
<
scope
>test</
scope
>
</
dependency
>
</
dependencies
>
</
project
>
|
#其中xml的幾個節點表示如下信息,更多配置信息,請參考擴展閱讀:
modelVersion:表示model版本,目前固定為4.0.0;
groupId:表示本項目組Id,通常是組織包名,如com.deific.mystudy
artifactId:表示本項目的模塊名。(模塊編程)如mystudy-maven表示是項目mystudy中的mystudy-maven模塊,是有關maven學習的模塊。
dependencies:表示本項目所依賴的所有其他項目(或jar包)
dependency:表示本項目依賴的某一個依賴項目
scope:表示這個依賴包的范圍,有四個值
1、test范圍指的是測試范圍有效,在編譯和打包時都不會使用這個依賴
2、compile范圍指的是編譯范圍有效,在編譯和打包時都會將依賴存儲進去
3、provided依賴:在編譯和測試的過程有效,最后生成war包時不會加入,諸如:servlet-api,因為servlet-api,tomcat等web服務器已經存在了,如果再打包會沖突
4、runtime在運行的時候依賴,在編譯的時候不依賴
4.10、使用Eclipse打開Maven創建的項目,在控制台輸出Hello World
#我們先在Eclipse中打開剛才Maven創建的項目,在菜單欄點擊File->Import,然后在彈出的窗口中,打開Maven選擇exsiting maven project,再在彈出的窗口中點擊右面的Browse,選擇我們使用Maven生成的目錄D:\_My_Project\_JAVA\idoall.org.helloworld,如下圖:
#這時,我們可以在Eclipse的項目窗口中看到我們導入的項目,在App.java文件上,單擊鼠標右鍵,選擇Run As->Java Application,就可以在控制台窗口,看到我們輸出的內容HelloWorld。如下圖:
5、擴展閱讀
maven3常用POM屬性及Settings屬性介紹:http://blog.csdn.net/lgm277531070/article/details/6922645
Maven Settings:http://maven.apache.org/ref/3.2.3/maven-settings/settings.html
Maven pom.xml 配置詳解:http://blog.csdn.net/ithomer/article/details/9332071
POM Reference:http://maven.apache.org/pom.html