大前提:java环境已经配置好html
maven是对于java工程的管理java
1、maven安装到macgit
一、首先,maven下载地址http://maven.apache.org/download.cgiapache
点击进去是最新版本的maven,后来发现最新版本出现了一些问题,因此我实际下载的是老版本3.6.1vim
点击最下面的“archive”超连接能够下载老版本bash
2,下载后把解压的文件夹放置到你想放的路径下面,好比/Users/zwf/apache-maven-3.6.1maven
而后此时须要更改.bash_profile文件,有两种方法,一个是直接在终端使用指令更改保存,一个是终端打开文件保存ide
第一种:ui
①输入 vim ~/.bash_profilegoogle
②输入i进行编辑
export M2_HOME="/Users/zwf/apache-maven-3.6.1"
export PATH="$M2_HOME/bin:$PATH"
③输入:wq保存(:w进行文件的保存,:wq为保存并退出指令)
④配置文件生效 source ~/.bash_profile
第二种(实际是用的这种)
①输入 open ~/.bash_profile
②在自动打开的文件里修改为
export M2_HOME="/Users/zwf/apache-maven-3.6.1"
export PATH="$M2_HOME/bin:$PATH"
以后点击保存按钮
③配置文件生效 source ~/.bash_profile
更改完配置文件之后,在终端输入mvn -v能够查看是否安装成功以及安装路径
三、setting.xml在maven的conf文件夹下
若是要更改该文件,直接替换覆盖便可
2、intelliJ IDEA 的maven配置
在preferences-maven中配置
maven home dictionary:(就是上面的/Users/zwf/apache-maven-3.6.1,能够进行覆盖)
user setting file:(setting.xml的路径,勾选override覆盖便可)
local reponsitory:本地仓库路径,取自setting.xml里的配置,通常不用覆盖
<!-- 本地仓库的路径。默认值为${user.home}/.m2/repository -->
<localRepository>usr/local/maven</localRepository>
配置好保存就ok了
3、遇到的一个问题
配置好后从git导入失败,也没法从maven下载资源
提示unable to import maven project:see logs for details
让查看log就去查看log,点击help-Show Log in Finder
查看有报错:【Error】com.google.inject.CreationException: Unable to create injector(http://www.javashuo.com/article/p-mafyxzup-ek.html)
java.lang.RuntimeException: com.google.inject.CreationException: Unable to create injector, see the following errors: 1) No implementation for org.apache.maven.model.path.PathTranslator was bound. while locating org.apache.maven.model.path.PathTranslator for field at org.apache.maven.model.interpolation.AbstractStringBasedModelInterpolator.pathTranslator(Unknown Source) at org.codehaus.plexus.DefaultPlexusContainer$1.configure(DefaultPlexusContainer.java:350) 2) No implementation for org.apache.maven.model.path.UrlNormalizer was bound. while locating org.apache.maven.model.path.UrlNormalizer for field at org.apache.maven.model.interpolation.AbstractStringBasedModelInterpolator.urlNormalizer(Unknown Source) at org.codehaus.plexus.DefaultPlexusContainer$1.configure(DefaultPlexusContainer.java:350) 2 errors at com.google.inject.internal.Errors.throwCreationExceptionIfErrorsExist(Errors.java:543) at com.google.inject.internal.InternalInjectorCreator.initializeStatically(InternalInjectorCreator.java:159) at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:106) at com.google.inject.Guice.createInjector(Guice.java:87) at com.google.inject.Guice.createInjector(Guice.java:69) at com.google.inject.Guice.createInjector(Guice.java:59) at org.codehaus.plexus.DefaultPlexusContainer.addComponent(DefaultPlexusContainer.java:344) at org.codehaus.plexus.DefaultPlexusContainer.addComponent(DefaultPlexusContainer.java:332) at org.jetbrains.idea.maven.server.Maven3XServerEmbedder.customizeComponents(Maven3XServerEmbedder.java:573) at org.jetbrains.idea.maven.server.Maven3XServerEmbedder.customize(Maven3XServerEmbedder.java:542) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at java.rmi/sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:359) at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:200) ......
缘由:Maven3.6.2的版本兼容问题。
解决方法:从新下载较低版本Maven3.6.1及如下版本能够顺利解决。
4、其余补充信息
一、关于setting xml的内容的意义
http://www.javashuo.com/article/p-gqjalatr-mc.html
二、setting.xml里的阿里云镜像,如须要
<mirrors> <mirror> <id>alimaven</id> <mirrorOf>central</mirrorOf> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> </mirror> </mirrors>