Maven未在Mac OSX中find特立独行
将Mac OSX 10.8升级到10.9后,在/ usr / sharepath中找不到Maven,但是在10.8中安装了Maven。
当我尝试这个命令:
$ maven -version
得到了这个结果
-bash:找不到命令mvn:
但它在10.8上工作正常? 任何想法?
在Mac OS X 10.9上,Maven默认不会再安装。 您需要自己安装,例如使用Homebrew 。
如果你不想安装自制软件(或任何其他软件包pipe理器)来安装maven,你可以从他们的网站上获取二进制文件:
http://maven.apache.org/download.cgi
将内容提取到一个文件夹(例如/Applications/apache-maven-3.1.1
)
$ tar -xvf apache-maven-3.1.1-bin.tar.gz
最后用你喜欢的任何texteditor来调整你的~/.bash_profile
export M2_HOME=/Applications/apache-maven-3.1.1 export PATH=$PATH:$M2_HOME/bin
重新启动terminal并用它进行testing
$ mvn -version
Apache Maven 3.1.1 (0728685237757ffbf44136acec0402957f723d9a; 2013-09-17 17:22:22+0200) Maven home: /Applications/apache-maven-3.1.1 Java version: 1.6.0_65, vendor: Apple Inc. Java home: /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home Default locale: de_DE, platform encoding: MacRoman OS name: "mac os x", version: "10.9", arch: "x86_64", family: "mac"
brew install maven
请确保您已经安装了最新的Xcode和命令行工具。
xcode-select --install
- 从这里下载Maven。
- 将刚下载的tar.gz解压到你想要的位置(例如:/ Users / admin / Maven)。
- 打开terminal。
- input“
cd
”进入你的个人文件夹。 - input“
touch .bash_profile
”。 - input“
open -e .bash_profile
”在TextEdit中打开.bash_profile。 - 在TextEditor中键入以下内容
alias mvn='/[Your file location]/apache-maven-xxx/bin/mvn' export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdkx.x.x_xx.jdk/Contents/Home/
(确保没有语音标记或撇号)8.确保填写了所需的数据(例如文件位置和版本号)。
- 保存您的更改
- 键入“
. .bash_profile
”重新加载.bash_profile并更新您添加的任何function。 (*确保你用一个空格分隔点)。 - 键入
mvn -version
如果成功,你应该看到以下内容:
Apache Maven 3.1.1 Maven home: /Users/admin/Maven/apache-maven-3.1.1 Java version: 1.7.0_51, vendor: Oracle Corporation Java home: /Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/jre Default locale: en_US, platform encoding: UTF-8 OS name: "mac os x", version: "10.9.1", arch: "x86_64", family: "mac"
这个解决scheme可能看起来很长,但事实并非如此 。 我只是列举了很多例子,所以一切都很清晰。 它在小牛操作系统中为我工作。
注意:我把上面的一些答案合并和编辑,添加了一些例子和格式,并公布了结果,所以主要的原因是原始创build者。
-
从这里下载Maven。
-
打开terminal。
-
将您刚刚下载的文件解压缩到您想要的位置,手动或在terminal中input以下行(填写所需的数据):
mv [Your file name] [Destination location] / tar -xvf [Your file name]
例如,如果我们的文件被命名为“
apache-maven-3.2.1-bin.tar
”(Maven version 3.2.1 ),并且我们想在“/Applications
”目录中find它,那么我们应该在终奌站:mv apache-maven-3.2.1-bin.tar /Applications/ tar -xvf apache-maven-3.2.1-bin.tar
-
如果您的计算机上没有安装任何JDK(Java开发工具包),请安装一个。
-
在terminal中键入“
java -version
”。 你应该看到这样的东西:java version "1.8.0" Java(TM) SE Runtime Environment (build 1.8.0-b132) Java HotSpot(TM) 64-Bit Server VM (build 25.0-b70, mixed mode)
记住你的Java版本(在这个例子中, 1.8.0 )。
-
input“
cd ~/
”到您的个人文件夹。 -
input“
touch .bash_profile
”。 -
input“
open -e .bash_profile
”在TextEdit中打开.bash_profile。 -
在TextEdit中input以下内容(复制所有内容并replace所需的数据):
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk [Your Java version] .jdk/Contents/Home export M2_HOME= [Your file location] /apache-maven- [Your Maven version] / export PATH=$PATH:$M2_HOME/bin alias mvn='$M2_HOME/bin/mvn'
例如,在我们的例子中,我们将用“
/Applications
”(用作“ Destination Location ”的值)replace为“1.8.0
”(步骤5中获得的值),“[Your file location]
在步骤3)和“[Your Maven version]
”“3.2.1
”(在第3步中观察到的Maven版本),产生以下代码:export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home export M2_HOME=/Applications/apache-maven-3.2.1/ export PATH=$PATH:$M2_HOME/bin alias mvn='$M2_HOME/bin/mvn'
-
保存您的更改
-
input“
source .bash_profile
”重新加载.bash_profile并更新您添加的任何function。 -
键入
mvn -version
。 如果成功,你应该看到以下内容:Apache Maven [Your Maven version] ( [Some weird stuff. Don't worry about this] ) Maven home: [Your file location] /apache-maven- [Your Maven version] Java version: [You Java version] , vendor: Oracle Corporation Java home: /Library/Java/JavaVirtualMachines/jdk [Your Java version] .jdk/Contents/Home/jre [Some other stuff which may vary depending on the configuration and the OS of the computer]
在我们的例子中,结果如下:
Apache Maven 3.2.1 (ea8b2b07643dbb1b84b6d16e1f08391b666bc1e9; 2014-02-14T18:37:52+01:00) Maven home: /Applications/apache-maven-3.2.1 Java version: 1.8.0, vendor: Oracle Corporation Java home: /Library/Java/JavaVirtualMachines/jdk1.8.0</b>.jdk/Contents/Home/jre Default locale: es_ES, platform encoding: UTF-8 OS name: "mac os x", version: "10.9.2", arch: "x86_64", family: "mac"
对于包括我在内的几个人来说,我不允许对皮克克的回答发表评论,所以我在接下来的答复中增加了一个单独的评论:
如果.bash_profile不起作用,基本上试着添加他在.profile文件中提到的variables。 它位于您的主目录中,然后重新启动terminal。 这让它为我工作。
明显的拦截器是你没有权限编辑.profile文件,使用“touch”来检查访问和“sudo”命令来获得访问
-
触摸.profile
-
vi。简介
这里是variablespkyeckbuild议我们添加一个解决scheme,为我编辑.profile:
-
导出M2_HOME = / apache-maven-3.3.3
-
export PATH = $ PATH:$ M2_HOME / bin