更新時間:2021-10-13 10:40:33 來源:動力節點 瀏覽1102次
您必須了解如何在計算機上安裝軟件。如果您不知道該怎么做,請詢問您辦公室、學校等的人員或請人向您解釋這一點。Maven 郵件列表不是尋求此建議的最佳場所。
Maven 是一個 Java 工具,因此您必須安裝Java才能繼續。
首先,下載 Maven并按照安裝說明進行操作。之后,在終端或命令提示符中鍵入以下內容:
mvn --version
它應該打印出您安裝的 Maven 版本,例如:
Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
Maven home: D:\apache-maven-3.6.3\apache-maven\bin\..
Java version: 1.8.0_232, vendor: AdoptOpenJDK, runtime: C:\Program Files\AdoptOpenJDK\jdk-8.0.232.09-hotspot\jre
Default locale: en_US, platform encoding: Cp1250
OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"
根據您的網絡設置,您可能需要額外的配置。如有必要,請查看配置 Maven的指南。
如果您使用的是 Windows,您應該查看 Windows 先決條件 以確保您準備好在 Windows 上使用 Maven。
您需要在某個地方放置您的項目。在某處創建一個目錄并在該目錄中啟動一個 shell。在命令行上,執行以下 Maven 目標:
mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=1.4 -DinteractiveMode=false
如果您剛剛安裝了 Maven,第一次運行可能需要一段時間。這是因為 Maven 正在將最新的工件(插件 jar 和其他文件)下載到您的本地存儲庫中。您可能還需要多次執行該命令才能成功。這是因為遠程服務器可能會在您的下載完成之前超時。別擔心,有辦法解決這個問題。
您會注意到generate目標創建了一個與 artifactId 同名的目錄。切換到那個目錄。
cd my-app
在此目錄下,您會注意到以下標準項目結構。
my-app
|-- pom.xml
`-- src
|-- main
| `-- java
| `-- com
| `-- mycompany
| `-- app
| `-- App.java
`-- test
`-- java
`-- com
`-- mycompany
`-- app
`-- AppTest.java
該src/main/java目錄包含了項目的源代碼,該src/test/java目錄包含測試源,并且pom.xml文件是項目的項目對象模型,或POM。
該pom.xml文件是 Maven 中項目配置的核心。它是一個單一的配置文件,其中包含以您想要的方式構建項目所需的大部分信息。POM 是巨大的,其復雜性可能令人生畏,但為了有效地使用它,沒有必要了解所有的復雜性。這個項目的POM是:
<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>
<version>1.0-SNAPSHOT</version>
<properties>
<maven.compiler.source>1.7</maven.compiler.source>
<maven.compiler.target>1.7</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
mvn package
命令行將打印出各種操作,并以以下內容結束:
...
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2.953 s
[INFO] Finished at: 2019-11-24T13:05:10+01:00
[INFO] ------------------------------------------------------------------------
與執行的第一個命令(archetype:generate)不同,第二個命令只是一個單詞 - package。這不是一個目標,而是一個階段。階段是構建生命周期中的一個步驟,它是一個有序的階段序列。當給出一個階段時,Maven 執行序列中的每個階段,直到并包括定義的階段。例如,如果您執行編譯階段,實際執行的階段是:
證實
生成源
流程來源
生成資源
流程資源
編譯
您可以使用以下命令測試新編譯和打包的 JAR:
java -cp target/my-app-1.0-SNAPSHOT.jar com.mycompany.app.App
這將打印精髓:
Hello World!
Maven 階段
雖然不是一個完整的列表,但這些是執行的最常見的默認生命周期階段。
validate : 驗證項目是否正確并且所有必要的信息都可用
compile : 編譯項目的源代碼
test:使用合適的單元測試框架測試編譯的源代碼。這些測試不應該要求打包或部署代碼
package:將編譯后的代碼打包成可分發的格式,例如 JAR。
集成測試:如有必要,處理包并將其部署到可以運行集成測試的環境中
驗證:運行任何檢查以驗證包是否有效并符合質量標準
install : 將包安裝到本地倉庫中,作為本地其他項目的依賴
deploy:在集成或發布環境中完成,將最終包復制到遠程存儲庫以與其他開發人員和項目共享。
除了上面的默認列表之外,還有另外兩個值得注意的Maven生命周期。他們是
clean:清除先前構建創建的工件
site : 為這個項目生成站點文檔
階段實際上映射到潛在目標。每個階段執行的具體目標取決于項目的打包類型。例如,如果項目類型是 JAR ,package 將執行jar:jar,如果項目類型是 - 你猜對了 - WAR ,則執行war:war。
需要注意的一件有趣的事情是階段和目標可以按順序執行。
mvn clean dependency:copy-dependencies package
此命令將清理項目、復制依賴項并打包項目(當然,執行到package 之前的所有階段)。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習