Maven簡介與安裝

来源:http://www.cnblogs.com/ShadowMoon/archive/2017/03/14/6539990.html
-Advertisement-
Play Games

Maven是跨平臺的項目管理工具,它是開源的,主要服務基於java平臺的項目構建、依賴管理和項目信息管理。 Maven作為一個構建工具非常的強大,能夠幫我們自動化構建過程,從清理、編譯、測試到生成報告,再到打包和部署。我們不需要也不應該一遍遍的輸入命令,一次次的點擊滑鼠,我們要做的是使用Maven配 ...


  Maven是跨平臺的項目管理工具,它是開源的,主要服務基於java平臺的項目構建、依賴管理和項目信息管理。

  Maven作為一個構建工具非常的強大,能夠幫我們自動化構建過程,從清理、編譯、測試到生成報告,再到打包和部署。我們不需要也不應該一遍遍的輸入命令,一次次的點擊滑鼠,我們要做的是使用Maven配置好項目,輸入簡單的命令(maven clean install),Maven就會幫我們處理好那些繁瑣的任務。

  Maven作為構建工具的其中一個優點,就是能幫助我們標準構建過程。在Maven之前,十個項目可能有十種構建方式;有了Maven之後,所有項目的構建命令都是簡單一致的,這極大的避免了不必要的學習成本,而且有利於促進項目團隊的標準化。

  Maven是跨平臺的,這就意味著不管是在Windows上,還是Linux或Mac上,都可以使用相同的命令。

  說了這麼多,那我們接下來看看,如何在我們電腦上裝上Maven

  1、在Windows上安裝

  1.1.檢查JDK安裝

  1.2.下載maven壓縮包

  1.3.環境變數配置

 

   首先檢查JAVA_HOME環境變數和java命令,具體操作這裡不概述,預設已安裝好jdk。由於Maven 3.0是相當成熟的產品,所以建議安裝 3 以上的版本。下載地址:http://maven.apache.org/download.html , 下載 apache-maven-3.0-bin.zip,如果對源代碼感興趣,可下載  apache-maven-3.0-src.zip

  

 安裝步驟:

 1)將壓縮包解壓到指定文件 如 D:/mavenroot/apache-maven-3.0

 2)配置環境變數 

     a.在系統變數中新建名為 M2_HOME變數,值為Maven安裝目錄 D:/mavenroot/apache-maven-3.0

     b.找到變數Path,在末尾加上 ;%M2_HOME%\bin 。 註: ;位分隔符,與前面變數隔開

     c.檢查安裝,在cmd中先輸入: echo %M2_HOME% 找到maven安裝路徑,然後使用命令: mvn -v;成功如下圖所示:

  

到這裡Windows上,maven的安裝,就全部完成了。

  另:配置MAVEN_OPTS環境變數(非必須,但很實用)

     運行mvn命令實際也是執行了Java命令,既然是Java命令,那Java命令可用的參數,maven也同樣可用使用,這是就需要配置下MAVEN_OPTS環境變數了

     通常設置MAVEN_OPTS的值為 -Xms128m -Xms512m,因為Java預設的最大可用記憶體往往不能滿足maven運行的需要,比如項目較大時,實用maven生成站點需要占用大量的內容,如果沒有配置,很容易就會造成java.lang.OutOfMemeoryError。因此一開始推薦配置該變數。

     配置方法參照M2_HOME的配置。

     3、.m2文件夾介紹

     打開用戶目錄,window系統如:Users/xiaochong/,在這個目錄下,你可以找到名為.m2的文件夾。 預設情況下,該文件夾放置了Maven本地倉庫.m2/repository。所有Maven構建都被存儲到該倉庫中,以方便重用。

     預設情況下,~/.m2目錄下除了repository倉庫以外就沒有其他的目錄和文件,不過大多的Maven用戶會需要複製M2_HOME/conf/setting.xml文件到~/.m2/setting.xml。這是一個最佳實踐

    複製到用戶目錄的好處:

    setting.xml在M2_HOME/conf/目錄下時,是屬於全局範圍的,整台機器的所有用戶都會受到配置的影響。而在用戶目錄下只會影響到當前用戶。

     推薦複製到用戶目錄,只要是為了避免無意識的影響到系統中的其他用戶。如果有確切需求,當然也可以使用。

    除了這一因素,配置用戶範圍setting.xml文件還便於Maven升級。直接修改conf下setting.xml會導致Maven升級不便,每次升級到新版的Maven,都需要複製setting.xml文件。如果使用~/.m2目錄,就不會影響到Maven的安裝文件

 

   

 

 

  

 

 

  

  

  

  

  

  


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 用類歐不斷縮小規模,就能在O(T*log2n)時間內求出答案。 題解:http://blog.csdn.net/coldef/article/details/62035919 代碼: 1 #include<cstdio> 2 #include<cstring> 3 #include<iostream ...
  • Python 沙箱逃逸是通過 eval 的安全問題來實現的一種 PWN 方法。 ...
  • 接手了一個maven管理的多模塊項目,又是javaconfig,又是spring data jpa,還算是比較新比較正規的模塊化結構吧..然後我往其中的一個模塊中新添加了一個jpa的entity,然後運行提示找不到新添加的類..倘若這不是jpa項目,倘若這不是javaconfig寫的也許就不會出現之 ...
  • select、poll、epoll三者的區別 select select最早於1983年出現在4.2BSD中,它通過一個select()系統調用來監視多個文件描述符的數組(在linux中一切事物皆文件,塊設備,socket連接等。),當select()返回後,該數組中就緒的文件描述符便會被內核修改標 ...
  • 1.數據+演算法=程式。 2.C語言程式是由一個或多個函數組成的,函數是由語句組成的,語句是由關鍵字,標識符,運算符,數據組成的;語句可分為:聲明語句,賦值語句,控制語句,函數語句,空語句。 3.#include語句是C預處理器指令,預處理器在C編譯器工作前對源代碼做預處理,即在該行位置鍵入了所包含文 ...
  • 1.貝爾實驗室的Dennis Ritchie在1972年開發了C語言,C來自於Ken Thompson的B語言。當時Ritchie正與 Thompson一起設計UNIX操作系統。 2.C是面向過程的編譯型語言,緊湊,運行速度快,精細控制能力(包括對硬體的控制),靈活。 3.C的發展方向:UNIX操作 ...
  • collection模塊是對Python的通用內置容器:字典、列表、元組和集合的擴展,它包含一些專業的容器數據類型: Counter(計數器):dict子類,用於計算可哈希性對象的個數。 OrderedDict(有序字典):dict 子類,記錄著數據成員添加的順序。 defaultdict(預設字典 ...
  • #include <cctype>(轉,歸納很好) 頭文件描述: 這是一個擁有許多字元串處理函數聲明的頭文件,這些函數可以用來對單獨字元串進行分類和轉換; 其中的函數描述: 這些函數傳入一個等價於字元串的整數作為參數,之後返回一個可以是其他字元或者一個代表布爾值的值,一個整數的0意味著假,一個與不同 ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...