以下为 IDEA Maven 相关配置备忘
1. Maven 下载安装与环境变量配置
1. 下载 Downloading Apache Maven 3.3.9,解压并存放到系统的某一目录下。
2. 执行 vim ~/.bash_profile
,添加以下两行内容:
export M2_HOME=/path/to/apache-maven-3.3.9
export PATH=$PATH:$M2_HOME/bin
3. 执行 source ~/.bash_profile
使解析文件立刻生效。
4. 执行 mvn -v
进行测试
2. Maven 镜像地址修改
执行 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>
中的内容为镜像地址,这里选择的是阿里的镜像地址。
3. 修改 IDEA 中 Maven 的目录
在 IDEA 的创建项目窗口,选择 Configure > Project Defaults > Settings
进行设置
注意:不能在打开的项目中设置,因为这样会使得设置的内容仅对当前项目生效。如下图,在打开的项目中进行设置时,会是
For current project
选择 Build, Execution, Deployment > Build Tools > Maven
或直接搜索 Maven
,设置 Maven home directory
为之前的 Maven 路径,并设置 User setting files
和 Local repository
为之前的 settings.xml
和 repository
路径,注意勾选 Override
选项,如下图:
(选做):建议复制 settings.xml
和 repository
到其他位置,以免因 Maven 版本更换而丢失配置和依赖仓库。如复制到 ~/.m2
路径下。
4. 修改 Maven 的 VM Option
使用 IDEA 创建 Maven 骨架项目时,可能会出现 :generate
过程一直持续的情况,标准项目目录结构一直无法生成。
这时需要修改 IDEA 中 Maven VM Option 的值,使其不再远程下载所需的 xml 文件。注意:这里仍需要在 For default project
中设置,修改 Build, Execution, Deployment > Build Tools > Maven > Runner
中的 VM Option 为 -DarchetypeCatalog=internal
,如下图:
当然也可以不使用 Create from archetype
,直接在 pom.xml
中 添加配置,然后点击右键 Reimport 生成 Maven 骨架项目目录结构。
5. 添加框架支持下载失败问题
在 Maven 项目中,对项目文件右键 Add Framework Support
添加如 Spring MVC
框架支持时,可能会出现无法下载框架所需文件的情况。而且从失败提示中可以发现,其下载的地址仍是 IDEA 默认的 Maven 镜像地址,而不是 settings.xml
中配置的。
猜测可能是由于 IDEA 中如下图的配置项造成的
对于这种情况,需要自行修改 pom.xml
文件,然后在 IDEA 中进行 Maven Reimport 即可,如 Spring MVC
可以添加如下内容到 pom.xml
的 <dependencies></dependencies>
标签中:
<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
以免之后出现不必要的报错。
这一情况通常出现在 Mac 上,需要将废纸篓中的项目也删除才可以。详见参考:Maven:Failed to create a Maven project ‘…pom.xml’ already exists in VFS 解决。
7. 默认 jdk/jre 问题
编译执行时,可能出现类似「原值 1.5 已过时,将在未来所有发行版本中删除」 的报错:
解决方案有以下几种:
A. 修改 Maven 的 settings.xml 并添加如下内容
<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 并添加如下内容,可解决在引入依赖时因 Maven 导致的问题( 使用方法 C 后,编译选项仍可能被 Maven 改变,此时可采用此方法解决 ):
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
C. 修改 IDEA 编译设置
选择右上角的 Project Structure
按钮:
在 Modules > Sources
中修改 Language level 为 8 (与自己使用的 jdk 版本相同)
然后在 Preferences
中修改 Build, Execution, Deployment > Compiler > Java Compiler
为 1.8 (与 Language level 对应)
注:这一步的设置同样建议对 Default Project
进行,不然新建的项目中还是需要修改
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。