IDEA Maven 配置備忘筆記
以下為 IDEA Maven 相關(guān)配置備忘
1. Maven 下載安裝與環(huán)境變量配置
1. 下載Downloading Apache Maven 3.3.9,解壓并存放到系統(tǒng)的某一目錄下。
2. 執(zhí)行 vim ~/.bash_profile
,添加以下兩行內(nèi)容:
export M2_HOME=/path/to/apache-maven-3.3.9 export PATH=$PATH:$M2_HOME/bin
3. 執(zhí)行 source ~/.bash_profile
使解析文件立刻生效。4. 執(zhí)行 mvn -v
進行測試
2. Maven 鏡像地址修改
執(zhí)行 vim /your/path/to/apache-maven-3.3.9/conf/settings.xml
在 <mirrors></mirrors>
中添加:
<mirror> <id>alimaven</id> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> <mirrorOf>central</mirrorOf> </mirror>
其中,<url>
中的內(nèi)容為鏡像地址,這里選擇的是阿里的鏡像地址。
3. 修改 IDEA 中 Maven 的目錄
在 IDEA 的創(chuàng)建項目窗口,選擇 Configure > Project Defaults > Settings
進行設(shè)置
注意:不能在打開的項目中設(shè)置,因為這樣會使得設(shè)置的內(nèi)容僅對當(dāng)前項目生效。如下圖,在打開的項目中進行設(shè)置時,會是
For current project
選擇 Build, Execution, Deployment > Build Tools > Maven
或直接搜索 Maven
,設(shè)置 Maven home directory
為之前的 Maven 路徑,并設(shè)置 User setting files
和 Local repository
為之前的 settings.xml
和 repository
路徑,注意勾選 Override
選項,如下圖:
(選做):建議復(fù)制 settings.xml
和 repository
到其他位置,以免因 Maven 版本更換而丟失配置和依賴倉庫。如復(fù)制到 ~/.m2
路徑下。
4. 修改 Maven 的 VM Option
使用 IDEA 創(chuàng)建 Maven 骨架項目時,可能會出現(xiàn) :generate
過程一直持續(xù)的情況,標(biāo)準(zhǔn)項目目錄結(jié)構(gòu)一直無法生成。
這時需要修改 IDEA 中 Maven VM Option 的值,使其不再遠程下載所需的 xml 文件。注意:這里仍需要在 For default project
中設(shè)置,修改 Build, Execution, Deployment > Build Tools > Maven > Runner
中的 VM Option 為 -DarchetypeCatalog=internal
,如下圖:
當(dāng)然也可以不使用 Create from archetype
,直接在 pom.xml
中 添加配置,然后點擊右鍵 Reimport 生成 Maven 骨架項目目錄結(jié)構(gòu)。
5. 添加框架支持下載失敗問題
在 Maven 項目中,對項目文件右鍵 Add Framework Support
添加如 Spring MVC
框架支持時,可能會出現(xiàn)無法下載框架所需文件的情況。而且從失敗提示中可以發(fā)現(xiàn),其下載的地址仍是 IDEA 默認的 Maven 鏡像地址,而不是 settings.xml
中配置的。
猜測可能是由于 IDEA 中如下圖的配置項造成的
對于這種情況,需要自行修改 pom.xml
文件,然后在 IDEA 中進行 Maven Reimport 即可,如 Spring MVC
可以添加如下內(nèi)容到 pom.xml
的 <dependencies></dependencies>
標(biāo)簽中:
<dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>3.2.4.RELEASE</version> <type>jar</type> </dependency>
6. 項目刪除問題
新建一個 Maven 項目后,若刪除該項目文件夾,并新建一個同名 Maven 項目,可能報錯顯示該項目已存在。
因而在移除 Maven 項目時,需要首先在 IDEA 中對項目文件夾點擊右鍵,選擇 Remove Module
以免之后出現(xiàn)不必要的報錯。
這一情況通常出現(xiàn)在 Mac 上,需要將廢紙簍中的項目也刪除才可以。
這往往是由于我們在同一個目錄中創(chuàng)建了Project Name相同的項目導(dǎo)致的。因為在同一目錄下不能創(chuàng)建兩個Project Name相同的Project。
所以在Mac下我們可以直接把原先的那個Project刪除后,再想創(chuàng)建一個Project Name一樣的,發(fā)現(xiàn)還是會出現(xiàn)該問題。問題的真正原因是原先的那個Project其實還是在我們的電腦上,即VFS虛擬文件系統(tǒng),我們可以在Mac的廢紙簍中找到剛才刪除的Project。最終的解決辦法就是清空廢紙簍或者刪除在廢紙簍中的原Project。這樣以后,我們就可以在同一個目錄中創(chuàng)建相同名字的Project了。
經(jīng)過實踐發(fā)現(xiàn),出現(xiàn)該報錯的原因只和Project的名字有關(guān),而和GroupId和ArtifactId無關(guān)。雖然在IDEA中創(chuàng)建項目時,默認ArtifactId和Project Name是一致的,其實這兩者也沒有必然關(guān)系,我們可以修改Project Name使其和ArtifactId不一樣。
7. 默認 jdk/jre 問題
編譯執(zhí)行時,可能出現(xiàn)類似「原值 1.5 已過時,將在未來所有發(fā)行版本中刪除」 的報錯:
解決方案有以下幾種:
A. 修改 Maven 的 settings.xml 并添加如下內(nèi)容
<profile> <id>jdk-1.8</id> <activation> <activeByDefault>true</activeByDefault> <jdk>1.8</jdk> </activation> <properties> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion> </properties> </profile>
B. 修改 pom.xml 并添加如下內(nèi)容,可解決在引入依賴時因 Maven 導(dǎo)致的問題( 使用方法 C 后,編譯選項仍可能被 Maven 改變,此時可采用此方法解決 ):
<properties> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> </properties>
C. 修改 IDEA 編譯設(shè)置
選擇右上角的 Project Structure
按鈕:
在 Modules > Sources
中修改 Language level 為 8 (與自己使用的 jdk 版本相同)
然后在 Preferences
中修改 Build, Execution, Deployment > Compiler > Java Compiler
為 1.8 (與 Language level 對應(yīng))
注:這一步的設(shè)置同樣建議對 Default Project
進行,不然新建的項目中還是需要修改
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
java使用RandomAccessFile類基于指針讀寫文件實例代碼
這篇文章主要介紹了java使用RandomAccessFile類基于指針讀寫文件實例代碼,具有一定參考價值,需要的朋友可以了解下。2017-10-10java使用randomaccessfile在文件任意位置寫入數(shù)據(jù)
Java在文件任意位置寫入數(shù)據(jù)可以使用RandomAccessFile方法來完成,下面看一個簡單的示例就明白了2014-01-01Java通過XPath獲取XML文件中符合特定條件的節(jié)點
今天小編就為大家分享一篇關(guān)于Java通過XPath獲取XML文件中符合特定條件的節(jié)點,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2019-01-01