Maven 5 分鐘入門教程
[b]Maven 5 分鐘入門教程[/b]
[*][b]安裝[/b]
Maven是一個Java工具,所以你得先把Java執行時環境安裝好才能繼續。
首先, 下載並安裝好Maven,然後按下面的指導一步步執行. 在命令列環境下面輸入下面的指令:
你應該能看到類似下面這樣的一些關於Maven的版本資訊:
鑑於你的網路配置,你可能需要一些其它的配置,你可以到Apache的官方網站上看更詳細的配置。[url]http://maven.apache.org/guides/mini/guide-configuring-maven.html[/url]不過入門階段,預設的配置也就夠了。
[*][b]用命令列建立一個 Project:[/b]
找個合適的地方建個資料夾神馬的,然後在命令列環境裡面cd到這個目錄下面來。執行下馬的語句。你第一次看不懂不要緊,看著看著你就慢慢的懂了。
如果你剛剛安裝Maven,這個命令執行的時間會比較長,因為它會到網上做一些更新,如果你網速不好,那麼時間就更久了。所以你就多念幾聲“阿彌陀佛”,保佑它順利執行完。如果你人品好的話,那麼很快,你就可以在當前資料夾下面看到這麼一堆東西了。你可以執行Tree 命令看看生成的目錄結構。
[*][b]POM配置檔案[/b]
Pom.xml是工程Maven配置檔案的核心,它是個包含了主要配置資訊的單一檔案。通過這個配置檔案,你可以安裝你想要的方式來編譯整個工程。它的複雜性確實有點望而生畏,所以你將來需要花時間去慢慢熟悉它,這樣你的工作才能更有效率。
[*][b]剛才這個命令列做了哪些事情?[/b]
這個命令列執行了一個Maven的目標任務(goal)[b] archetype:generate[/b], 我們傳了很多引數給這個目標任務。字首[b]archetype [/b]表示一個外掛. 外掛封裝了很多目標任務(goal)。這個概念跟Ant裡面的類似。你可以到Apache官網瞭解更多關於外掛的資訊。[url]http://maven.apache.org/plugins/index.html[/url]這裡提供了各種各樣的外掛來滿足不同的需要。每個都夠你折騰一段時間。
[*][b]Build the Project[/b]
執行這個指令是幫你把專案打包,當然所以打包依賴的任務也都會自動被執行到。這根Ant大同小異。 你可以在控制檯看到這樣的資訊。
和前面你執行的那個長長的命令列不同(archetype:generate),你可能已經注意到這個命令列很短,後面跟了個引數[B] package[/B],這個引數和前面不一樣,它不是什麼外掛,也不是什麼目標任務。Maven給它起了個新名字(phase),我們暫時翻譯成狀態。可以理解為專案的一中狀態。當你輸入這個指令後,Maven幫你做了下面這些事情:
[list]
[*]1.validate
[*]2.generate-sources
[*]3.process-sources
[*]4.generate-resources
[*]5.process-resources
[*]6.compile
[/list]
執行[b] Tree . [/b]命令,你可以看到它生存了新的目錄。
其中還打了個jar包 my-app-1.0-SNAPSHOT.jar
[*][b]Maven Phases(Maven 預定義指令)[/b]
下面列舉了Maven最常用的一些指令
[list]
[*][b]validate[/b]: validate the project is correct and all necessary information is available
[*][b]compile[/b]: compile the source code of the project
[*][b]test[/b]: test the compiled source code using a suitable unit testing framework. These tests should not require the code be packaged or deployed
[*][b]package[/b]: take the compiled code and package it in its distributable format, such as a JAR.
[*][b]integration-test[/b]: process and deploy the package if necessary into an environment where integration tests can be run
[*][b]verify[/b]: run any checks to verify the package is valid and meets quality criteria
[*][b]install[/b]: install the package into the local repository, for use as a dependency in other projects locally
[*][b]deploy[/b]: done in an integration or release environment, copies the final package to the remote repository for sharing with other developers and projects.
[*][b]clean[/b]: cleans up artifacts created by prior builds
[*][b]site[/b]: generates site documentation for this project
[/list]
對於上面的這些指令,我們建議你每個都執行一下,看看什麼效果。對你瞭解Maven的功能很有幫助。
[*][b]生成你的專案站點[/b]
這個比較有意思,會幫你的Project生存一個站點。
This phase generates a site based upon information on the project's pom. You can look at the documentation generated under target/site.
如果你有興趣的話,可以到官網瞭解更多的資訊。
[url]http://maven.apache.org/guides/getting-started/index.html[/url]
[*][b]安裝[/b]
Maven是一個Java工具,所以你得先把Java執行時環境安裝好才能繼續。
首先, 下載並安裝好Maven,然後按下面的指導一步步執行. 在命令列環境下面輸入下面的指令:
mvn --version
你應該能看到類似下面這樣的一些關於Maven的版本資訊:
Apache Maven 3.0.3 (r1075438; 2011-02-28 18:31:09+0100)
Maven home: D:\apache-maven-3.0.3\bin\..
Java version: 1.6.0_25, vendor: Sun Microsystems Inc.
Java home: E:\Program Files\Java\jdk1.6.0_25\jre
Default locale: nl_NL, platform encoding: Cp1252
OS name: "windows 7", version: "6.1", arch: "amd64", family: "windows"
鑑於你的網路配置,你可能需要一些其它的配置,你可以到Apache的官方網站上看更詳細的配置。[url]http://maven.apache.org/guides/mini/guide-configuring-maven.html[/url]不過入門階段,預設的配置也就夠了。
[*][b]用命令列建立一個 Project:[/b]
找個合適的地方建個資料夾神馬的,然後在命令列環境裡面cd到這個目錄下面來。執行下馬的語句。你第一次看不懂不要緊,看著看著你就慢慢的懂了。
mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
如果你剛剛安裝Maven,這個命令執行的時間會比較長,因為它會到網上做一些更新,如果你網速不好,那麼時間就更久了。所以你就多念幾聲“阿彌陀佛”,保佑它順利執行完。如果你人品好的話,那麼很快,你就可以在當前資料夾下面看到這麼一堆東西了。你可以執行Tree 命令看看生成的目錄結構。
Tree . (仔細看,tree 後面有個小點哦,表示當前目錄。)
my-app
|-- pom.xml (這個其實是最終於的產物。)
`-- src
|-- main
| `-- java
| `-- com
| `-- mycompany
| `-- app
| `-- App.java (這個是生存的SourceCode)
`-- test
`-- java
`-- com
`-- mycompany
`-- app
`-- AppTest.java(這個是測試的Code,是不是感覺超牛B,超變態)
[*][b]POM配置檔案[/b]
Pom.xml是工程Maven配置檔案的核心,它是個包含了主要配置資訊的單一檔案。通過這個配置檔案,你可以安裝你想要的方式來編譯整個工程。它的複雜性確實有點望而生畏,所以你將來需要花時間去慢慢熟悉它,這樣你的工作才能更有效率。
<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.mycompany.app</groupId>
<artifactId>my-app</artifactId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
<name>Maven Quick Start Archetype</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.8.2</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
[*][b]剛才這個命令列做了哪些事情?[/b]
這個命令列執行了一個Maven的目標任務(goal)[b] archetype:generate[/b], 我們傳了很多引數給這個目標任務。字首[b]archetype [/b]表示一個外掛. 外掛封裝了很多目標任務(goal)。這個概念跟Ant裡面的類似。你可以到Apache官網瞭解更多關於外掛的資訊。[url]http://maven.apache.org/plugins/index.html[/url]這裡提供了各種各樣的外掛來滿足不同的需要。每個都夠你折騰一段時間。
[*][b]Build the Project[/b]
cd my-app
mvn package
執行這個指令是幫你把專案打包,當然所以打包依賴的任務也都會自動被執行到。這根Ant大同小異。 你可以在控制檯看到這樣的資訊。
...
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2 seconds
[INFO] Finished at: Thu Jul 07 21:34:52 CEST 2011
[INFO] Final Memory: 3M/6M
[INFO] ------------------------------------------------------------------------
和前面你執行的那個長長的命令列不同(archetype:generate),你可能已經注意到這個命令列很短,後面跟了個引數[B] package[/B],這個引數和前面不一樣,它不是什麼外掛,也不是什麼目標任務。Maven給它起了個新名字(phase),我們暫時翻譯成狀態。可以理解為專案的一中狀態。當你輸入這個指令後,Maven幫你做了下面這些事情:
[list]
[*]1.validate
[*]2.generate-sources
[*]3.process-sources
[*]4.generate-resources
[*]5.process-resources
[*]6.compile
[/list]
執行[b] Tree . [/b]命令,你可以看到它生存了新的目錄。
├─src
│ ├─main
│ │ └─java
│ │ └─com
│ │ └─mycompany
│ │ └─app
│ └─test
│ └─java
│ └─com
│ └─mycompany
│ └─app
└─target
├─classes
│ └─com
│ └─mycompany
│ └─app
├─maven-archiver
├─surefire-reports
└─test-classes
└─com
└─mycompany
└─app
其中還打了個jar包 my-app-1.0-SNAPSHOT.jar
[*][b]Maven Phases(Maven 預定義指令)[/b]
下面列舉了Maven最常用的一些指令
[list]
[*][b]validate[/b]: validate the project is correct and all necessary information is available
[*][b]compile[/b]: compile the source code of the project
[*][b]test[/b]: test the compiled source code using a suitable unit testing framework. These tests should not require the code be packaged or deployed
[*][b]package[/b]: take the compiled code and package it in its distributable format, such as a JAR.
[*][b]integration-test[/b]: process and deploy the package if necessary into an environment where integration tests can be run
[*][b]verify[/b]: run any checks to verify the package is valid and meets quality criteria
[*][b]install[/b]: install the package into the local repository, for use as a dependency in other projects locally
[*][b]deploy[/b]: done in an integration or release environment, copies the final package to the remote repository for sharing with other developers and projects.
[*][b]clean[/b]: cleans up artifacts created by prior builds
[*][b]site[/b]: generates site documentation for this project
[/list]
對於上面的這些指令,我們建議你每個都執行一下,看看什麼效果。對你瞭解Maven的功能很有幫助。
[*][b]生成你的專案站點[/b]
mvn site
這個比較有意思,會幫你的Project生存一個站點。
This phase generates a site based upon information on the project's pom. You can look at the documentation generated under target/site.
如果你有興趣的話,可以到官網瞭解更多的資訊。
[url]http://maven.apache.org/guides/getting-started/index.html[/url]
相關文章
- 5分鐘入門AWK
- 30 分鐘 Qunit 入門教程
- 30 分鐘快速入門 Docker 教程Docker
- 30 分鐘 Java Lambda 入門教程Java
- Maven入門教程Maven
- 5分鐘入門git模式開發Git模式
- 5分鐘入門 next13
- WebSocket:5分鐘從入門到精通Web
- 【入門教程】5分鐘教你快速學會整合Java springboot ~JavaSpring Boot
- 正規表示式30分鐘入門教程
- Go 語言基礎教程:10分鐘入門Go
- QUnit5分鐘教程
- Maven 教程之入門指南Maven
- 5分鐘入門MP4檔案格式
- 30分鐘入門MyBatisMyBatis
- Webpack 10分鐘入門Web
- JavaScript 10分鐘入門JavaScript
- 5分鐘安裝docker教程Docker
- 高階篇:獨立開發者 5 分鐘入門 ASO
- 5分鐘帶你入門apicloud,開發appAPICloudAPP
- 一分鐘sed入門(一分鐘系列)
- LaTeX新人教程,30分鐘從完全陌生到基本入門
- 【譯】30 分鐘入門 TypescriptTypeScript
- 20分鐘gulp快速入門
- 十分鐘入門 Less
- 十分鐘入門RocketMQMQ
- 10分鐘快速入門RedisRedis
- Emacs Lisp 15 分鐘入門MacLisp
- Seaborn5 分鐘入門 (二)——barplot&countplot&pointplot
- 5分鐘上手cml視訊教程
- PyTorch 60 分鐘入門教程:資料並行處理PyTorch並行
- Python語言如何入門?這篇文章讓你5分鐘入門Python!Python
- Python 視覺化 | Seaborn5 分鐘入門 (五)——lmplotPython視覺化
- 5分鐘帶你快速入門和了解 OAM Kubernetes
- 【初級篇】獨立開發者 5 分鐘入門 App 營銷APP
- 「Git」使用筆記 「Git」指令大全 「Git」命令5分鐘入門Git筆記
- 3分鐘入門lambda表示式
- 三分鐘爬蟲入門爬蟲