Idea快速開發(fā)MAVEN項(xiàng)目


一.配置Maven的環(huán)境變量

點(diǎn)擊“Apache-Maven官方網(wǎng)站”進(jìn)入官網(wǎng),點(diǎn)擊左側(cè)Download選項(xiàng):

進(jìn)入了下載頁(yè)面,往下拉可發(fā)現(xiàn)當(dāng)前版本是3.3.3,點(diǎn)擊下面紅框中的apache-maven-3.3.9-bin.zip就可下載,下載后解壓縮到相應(yīng)目錄下:

新增系統(tǒng)變量MAVEN_HOME:即MAVEN安裝目錄:

在Path中加入:%MAVEN_HOME%\bin;

正在上傳...取消

在cmd中輸入mvn -v,若顯示如下,則說明本地maven配置完成:

二.IDEA開發(fā)環(huán)境中搭建MAVEN

當(dāng)配置完Maven之后,我們需要給Idea配置Maven,那么首先必須先要安裝Idea,Idea的安裝在這里就不累贅了,請(qǐng)自行百度,非常簡(jiǎn)單,下一步下一步即可,安裝完成之后打開Idea設(shè)置Maven,如圖所示:

單擊Setting之后,設(shè)置Maven節(jié)點(diǎn)下的Maven home directory和user settings file和local repository ? ?如圖所示:

到這里我們整個(gè)Idea配置Maven就完成了,下面來說使用Maven開發(fā)JavaWeb項(xiàng)目以及使用Maven打包。

三.在IDEA中創(chuàng)建MAVEN項(xiàng)目

前面說了這么多,差不多基本的東西都保障了(前提保證你已經(jīng)安裝了jdk)。現(xiàn)在進(jìn)入正題,如何來創(chuàng)建一個(gè)Web項(xiàng)目。對(duì)于不使用Maven的開發(fā)者,可以直接建一個(gè)簡(jiǎn)單的Web項(xiàng)目。使用Maven的話,請(qǐng)按照?qǐng)D進(jìn)行操作。

菜單File->New Project可進(jìn)入上圖界面,首先選擇左邊欄Maven,再配置JDK(一般如果之前添加了JDK的話會(huì)自動(dòng)填充,如未添加的話點(diǎn)擊旁邊的New將JDK目錄導(dǎo)入即可)。勾選“Create from archetype“,然后選中4處藍(lán)色位置webapp,點(diǎn)Next,進(jìn)入如下界面:

這里需要填寫GroupId和ArtifactId還有Version,這三個(gè)屬性目的是標(biāo)識(shí)你的項(xiàng)目的唯一性,比如Tomcat的GroupId是org.apache,即它是apache組織的項(xiàng)目,ArtifactId是tomcat,項(xiàng)目名為tomcat,而我當(dāng)前使用的Version是7.0.68。這些只在發(fā)布時(shí)有用,在此可以隨便填寫,填好后點(diǎn)Next,到如下界面。

打開Maven home directory,可以發(fā)現(xiàn)IntelliJ IDEA已經(jīng)集成了Maven 2和Maven 3兩個(gè)版本,如果使用默認(rèn)集成的maven的話,選擇Buldled(Maven 3),直接點(diǎn)擊Next。

我們也可以導(dǎo)入本地新安裝的較新的Maven版本,點(diǎn)擊藍(lán)色箭頭右邊的 ... 按鈕將Maven路徑導(dǎo)入即可,點(diǎn)擊Next:

填寫項(xiàng)目名,選擇項(xiàng)目保存路徑,點(diǎn)擊Finish:

進(jìn)入如下界面,maven會(huì)在后臺(tái)生成web項(xiàng)目,這需要等待一定的時(shí)間,視網(wǎng)絡(luò)環(huán)境而定,經(jīng)驗(yàn)發(fā)現(xiàn)用較新版本的maven項(xiàng)目生成更快,使用IDEA集成的maven可能會(huì)等待很長(zhǎng)一段實(shí)踐。

左邊紅框中展示了該項(xiàng)目的文件結(jié)構(gòu)。可以發(fā)現(xiàn),它在src/main下創(chuàng)建了一個(gè)recources文件夾,該文件夾一般用來存放一些資源文件,還有一個(gè)webapp文件夾,用來存放web配置文件以及jsp頁(yè)面等,這已經(jīng)組成了一個(gè)原始的web應(yīng)用。選擇右邊紅框的Enable-Auto-Import,可以在每次修改pom.xml后,自動(dòng)的下載并導(dǎo)入jar包,這一點(diǎn)在后面詳述。

四.MAVEN自動(dòng)導(dǎo)入jar包

我們以SpringMVC開發(fā)為例,我們需要用到SpringMVC的相關(guān)jar包。如果不使用Maven的話,?,F(xiàn)在使用maven的話,就不需要上網(wǎng)找jar包了。具體容我一一道來。

Maven所做的工作其實(shí)很簡(jiǎn)單,就是自動(dòng)把你需要的jar包下載到本地,然后關(guān)聯(lián)到項(xiàng)目中來。maven的所有jar包都是保存在幾個(gè)中央倉(cāng)庫(kù)里面的,其中一個(gè)最常用的是Maven Repository,即,你需要什么jar包,它就會(huì)從倉(cāng)庫(kù)中拿給你。那么如何告訴maven需要什么jar包呢?我們看看工程目錄,能找到一個(gè)pom.xml文件(這個(gè)文件在剛創(chuàng)建好項(xiàng)目時(shí)就已經(jīng)展現(xiàn)在了大家面前),maven就是靠它來定義需求的,代碼如下:

4.0.0com.gaussicspringmvcdemowar1.0-SNAPSHOTspringmvcdemo?Maven?Webapphttp://maven.apache.orgjunitjunit3.8.1testspringmvcdemo

我們可以看到這個(gè)文件包含了我們之前定義的本項(xiàng)目的gropId等信息,這些信息是該項(xiàng)目的標(biāo)識(shí),我們不要去改動(dòng)它們。重點(diǎn)看標(biāo)簽,翻譯過來是”依賴“的意思,也就是說把對(duì)每個(gè)包的需求都稱為一個(gè)依賴,定義在中。在每個(gè)中,你需要提供的是所需jar包的groupId、artifactId、version這三個(gè)必要信息。比如上面我們看到引入可一個(gè)junit包,格式如下:

junitjunit3.8.1test

這是單元測(cè)試包,提供了三個(gè)基本信息,第4個(gè)scope對(duì)其他包來說是非必需的。所有jar包的引入都要滿足這個(gè)格式。那么如何查看這些jar包的3個(gè)信息呢,可能剛接觸是開發(fā)者還不是很熟悉,這個(gè)時(shí)候就需要查閱倉(cāng)庫(kù)了。比如我們需要引入Spring核心jar包spring-core,打開Maven Repository,搜索spring-core,進(jìn)入如下界面:

點(diǎn)擊進(jìn)入紅框選中的Spring Core,如下所示,可以看到各版本的使用情況:

選擇最新版本4.2.5.RELEASE,可以看到其dependency寫法如下紅框所示:

我們將其復(fù)制到pom.xml中的中:

這樣,Maven就會(huì)開始自動(dòng)下載jar包到本地倉(cāng)庫(kù),然后關(guān)聯(lián)到你的項(xiàng)目中,下載完成后,我們展開工程目錄中External Libraries:

可以發(fā)現(xiàn),雖然我們只寫了一個(gè)依賴,但是它導(dǎo)入了兩個(gè)jar包,也就是說,導(dǎo)入某個(gè)jar包時(shí),與它密切相關(guān)的jar包也會(huì)同時(shí)被導(dǎo)入進(jìn)來。

除了spring-core,我還要spring-context,復(fù)制spring-core的,將spring-core改為spring-context,如下:

org.springframeworkspring-context4.2.5.RELEASE

下載完成后,查看External Libraries,會(huì)不會(huì)發(fā)現(xiàn),瞬間導(dǎo)入了好多jar包(當(dāng)然不是瞬間,這得看你的網(wǎng)速了)呢:

這就是Maven的強(qiáng)大之處,如果你需要使用SpringMVC開發(fā)網(wǎng)站的話,只需記住幾個(gè)重要的包的名字,就可以輕松將所有包導(dǎo)入項(xiàng)目中。

長(zhǎng)話短說,現(xiàn)在我們要進(jìn)行SpringMVC的開發(fā),請(qǐng)把你的pom.xml變成下面的樣子,當(dāng)然不要改你的grupId等信息(從modelVersion到url都不要?jiǎng)樱?/p>

4.2.6.RELEASE5.1.0.Final

請(qǐng)?jiān)谥屑尤胍韵乱蕾嚕?/p>

org.springframeworkspring-webmvc${spring.version}org.springframework.dataspring-data-jpa1.10.1.RELEASEorg.hibernatehibernate-entitymanager${hibernate.version}org.hibernatehibernate-c3p0${hibernate.version}com.mchangec3p00.9.5.2javax.servletjstl1.2mysqlmysql-connector-java5.1.39

將改成如下形式:

springmvcdemoorg.apache.maven.pluginsmaven-compiler-plugin1.81.8

我們可以發(fā)現(xiàn),除了導(dǎo)入了spring相關(guān)jar包,還有一些其他的包,這些包都是有作用的,我們后面慢慢說。如果不使用Maven請(qǐng)自行下載spring、hibernate、mysql、jstl等相關(guān)jar包然后導(dǎo)入到工程中。至此,jar包的導(dǎo)入就完成了,我們按 ctrl+alt+shift+s,或者File->Project Structure查看一下項(xiàng)目結(jié)構(gòu),看看有什么問題:

由于之后我們要開始寫代碼了,先做一些配置,選擇Modules,在SpringMVCDemo的src\main文件夾中新建一個(gè)文件夾,取名為java:

選中java文件夾,點(diǎn)擊上面的Make as:Sources,該文件夾就會(huì)變成藍(lán)色,用以保存java代碼,按OK,結(jié)束配置。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,711評(píng)論 19 139
  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 47,290評(píng)論 6 342
  • 訪問GitHub下載最新源碼:https://github.com/gaussic/SpringMVCDemo 文...
    AiPuff閱讀 4,292評(píng)論 4 35
  • 娛樂圈里邊有很明星夫婦都會(huì)給自己的寶寶起一個(gè)敲可愛的小名,但是大家有沒有發(fā)現(xiàn),明星們給孩子們?nèi)〉娜槊麩o外乎分為這幾...
    簡(jiǎn)娯閱讀 1,315評(píng)論 0 0
  • 文/塵渺凡 仲夏, 39℃的正午, 室外流火,異常的熱。 他走出辦公室,走出電梯,走出辦公大樓。 轟的一下,當(dāng)電動(dòng)...
    塵渺凡閱讀 532評(píng)論 1 1

友情鏈接更多精彩內(nèi)容