Instalar Maven en Mac OS X

546

Estoy tratando de instalar Maven a través del terminal siguiendo estas instrucciones .

Hasta ahora tengo esto

export M2_HOME=/user/apple/apache-maven-3.0.3
export M2=$M2_HOME/bin
export PATH=$M2:$PATH
export JAVA_HOME=/usr/java/jdk1.6.0_22

Esta es probablemente una pregunta estúpida ¿a dónde vas a encontrar esto?

Edgardo Roldan
fuente
¿Qué es lo que estás tratando de encontrar? Con las variables de entorno de la forma en que las ha enumerado, debería poder invocar el mvnejecutable desde la ventana de su terminal.
Sri Sankaran
Si, como en mi caso, está intentando bajar de Maven 3 a Maven 2, vea este excelente blog: blog.frau-klein.org/2011/04/…
Jeff
2
Edgardo Creo que debe desmarcar la respuesta comprobar si puedes ...
jcollum

Respuestas:

208

OS X anterior a Mavericks (10.9) en realidad viene con Maven 3 incorporado.

Si está en OS X Lion, no tendrá Java instalado de forma predeterminada. Simplemente ejecútelo javay le pedirá que lo instale.

Suponiendo que se cumplen las calificaciones, ejecute mvn -versiony vea algunos resultados como este:

Apache Maven 3.0.3 (r1075438; 2011-02-28 12:31:09-0500)
Maven home: /usr/share/maven
Java version: 1.6.0_29, vendor: Apple Inc.
Java home: /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
Default locale: en_US, platform encoding: MacRoman
OS name: "mac os x", version: "10.7.2", arch: "x86_64", family: "mac"
Miguel
fuente
1
Si por alguna razón necesita Maven 2 en Lion, necesita descargarlo, configurar su M2_HOME, y luego debe asegurarse de que donde sea que lo instale aparezca antes / usr / bin en su ruta, o cambie el / usr / bin / mvn para un enlace simbólico al tuyo. Sé que mucha gente todavía trabaja en cosas con Maven 2, incluido yo mismo.
Michael
3
Solo para tu información, Mountain Lion viene con 3.0.3 también.
Michael
389
Actualización, con OSX 10.9 Maverick, Maven ya no está instalado por defecto.
Jerry Tian
14
@ Michael instalé Java en Maverick, pero no instaló Maven para mí.
Swapnil
66
Yosemite no incluye maven como parte de la instalación, con java o con herramientas de línea de comando xcode.
Michael
1899

Alternativamente, recomiendo instalar Homebrew para este tipo de utilidades.

Luego solo instala Maven usando:

brew install maven

PD: Si tienes un error 404, intenta hacer un brew updatepoco antes

brasskazoo
fuente
164
En OS X 10.9 Mavericks, como no hay instalado Maven (al menos en la versión beta), esta es la respuesta correcta.
Nacho
99
Es una respuesta, pero no exclusivamente la "correcta". Descargar el zip binario de Maven desde el sitio web de Maven es más rápido y fácil.
RCross
16
En OS X 10.9 deberías usarlo brew install maven30ya que maven 3.1.1 parece tener errores.
tadeuzagallo
18
brew install homebrew/versions/maven30Lo hizo por mí. Gracias @TadeuZagallo !!
fmquaglia
16
Ya no es necesario usarlo, brew install maven30ya que la versión 3.2.1 más reciente es bastante rápida y parece no tener los errores que tenía 3.1.1.
Michael Hogenson
240

Descargo de responsabilidad : Aquí hay una respuesta completa que tiene en cuenta la última versión de OS X (10.9 AKA Mavericks). Soy consciente de que todo lo que compilé en esta respuesta ya está presente en la página, pero tenerlo claramente en una respuesta lo hace mucho más claro.

En primer lugar, con versiones anteriores de OS X, Maven se instala de forma predeterminada. Si falta Java you@host:~ $ javaen un terminal, se le solicitará la instalación de Java.

Con Mac OS X 10.9 (Mavericks), Maven ya no está instalado por defecto. Entonces son posibles diferentes opciones:

  • Usando Homebrew :
    • you@host:~$ brew install maven instalará la última versión de Maven (3.5.2 el 01/02/2018)
    • you@host:~$ brew install maven30 instalará Maven 3.0 si es necesario
  • Usando Macports : (no probé esto)
    • you@host:~$ sudo port install maven instalará el último Maven (?)
    • o:
    • you@host:~$ sudo port install maven3 instalará Maven 3.0
    • you@host:~$ sudo port select --set maven maven3 selecciona esa versión de Maven
  • Instalar a mano:
    • Descargar Maven desde su página de inicio
    • Siga las instrucciones de instalación:
      1. Extraiga el archivo de distribución, es decir, apache-maven-3.3.9-bin.tar.gzen el directorio que desea instalar Maven 3.3.9. El subdirectorio apache-maven-3.3.9se creará a partir del archivo.
      2. Opcional : Agregue la variable de entorno MAVEN_OPTS para especificar las propiedades de JVM, por ejemplo export MAVEN_OPTS="-Xms256m -Xmx512m". Esta variable de entorno se puede usar para proporcionar opciones adicionales a Maven.
      3. Asegúrese de que JAVA_HOME esté configurado en la ubicación de su JDK, por ejemplo, export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)y que $JAVA_HOME/binesté en su PATHvariable de entorno (aunque eso podría no ser necesario con las últimas versiones de Mac OS X y Oracle JDK).
      4. Añadir extraído apache-maven-3.3.9/bina su$PATH
      5. Ejecute mvn --versionpara verificar que esté instalado correctamente.
snooze92
fuente
66
sudo port install maven3instala Maven 3.0.5.
juzgar
3
Cuando realice la instalación a mano, en lugar de excavar tratando de encontrar JAVA_HOME, considere usar export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)(consulte esta respuesta ). Además (al menos en Mavericks y Yosemite con Oracle JDK 1.8) no debería necesitar $JAVA_HOME/binen su camino ya que todo está vinculado /usr/bin.
David Moles
¡Tienes razón sobre la mejor manera de definir JAVA_HOME! No sabía sobre los enlaces simbólicos, pero edité mi respuesta para incluir sus comentarios. Gracias
snooze92
1
mejor agregar las exportinstrucciones para ~/.bash_profileque esté disponible en todas las sesiones, vea esta publicación para más detalles
Miranda
¿Mejor que qué, @Miranda? No especifiqué dónde hacer los exports en la opción "instalación manual" porque creo que las personas que eligen la instalación manual saben mejor dónde quieren hacer estas exportaciones. Esto es bastante específico para cada persona y cada sistema, creo.
snooze92
89

Cuando actualicé recientemente a OS X Mavericks y mis compilaciones de Maven comienzan a fallar. Así que necesitaba instalar maven nuevamente, ya que no viene incorporado. Luego intenté con el comando:

brew install maven 

funciona, pero instala la versión 3.1.1 de maven que causa algunos problemas a algunos usuarios como ( https://cwiki.apache.org/confluence/display/MAVEN/AetherClassNotFound ). Entonces, si se encuentra con el mismo problema, probablemente desee instalar la versión anterior de Maven, la 3.0.5. Para hacer eso con Homebrew, debe ejecutar el siguiente comando:

brew install https://raw.github.com/Homebrew/homebrew-versions/master/maven30.rb

Eso es todo, luego usará fórmulas de Homebrew diferentes que le darán el maven 3.0.5 en su lugar.

Alécio Carvalho
fuente
El archivo sin procesar actualmente es 503-ing esporádicamente. Cuando funcionó, lo guardé en un archivo local.
NRitH
1
Tuve que editar manualmente el archivo de preparación para evitar un 404. 'brew edit maven'. Codifiqué en uno de los espejos la 'url' y también tuve que cambiar la suma de verificación 'sha'. url ' apache.mesi.com.ar/maven/maven-3/3.0.4/binaries/… ' sha1 'aecc0d3d67732939c0056d4a0d8510483ee1167e'
Derek
También asegúrese de brew updateobtener lo último antes de hacerlo brew install maven, si desea que brew instale maven 3.1.1+.
Gary S. Weaver
2
brew install maven30
timomeinen
1
Acabo de usar brew install mavene instaló 3.0.5. Esto es lo que se imprime cuando lo hago mvn -version:mvn -version Apache Maven 3.0.5 (r01de14724cdef164cd33c7c8c2fe155faf9602da; 2013-02-19 05:51:28-0800) Maven home: /usr/local/Cellar/maven/3.0.5/libexec Java version: 1.7.0_45, vendor: Oracle Corporation Java home: /Library/Java/JavaVirtualMachines/jdk1.7.0_45.jdk/Contents/Home/jre Default locale: en_US, platform encoding: UTF-8 OS name: "mac os x", version: "10.9.3", arch: "x86_64", family: "mac"
Azurespot
49

macOS Sierra en adelante

brew install maven

Saorikido
fuente
3
Si bien este fragmento de código puede resolver la pregunta, incluir una explicación realmente ayuda a mejorar la calidad de su publicación. Recuerde que está respondiendo la pregunta para los lectores en el futuro, y que esas personas podrían no conocer los motivos de su sugerencia de código. Por favor, también trate de no saturar su código con comentarios explicativos, ¡esto reduce la legibilidad tanto del código como de las explicaciones!
kayess
1
Si está obteniendo el "comando brew no encontrado", primero debe instalar brew. Ese es el enlace al sitio web brew.sh Es el comando para instalar/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
3akat
40

Si usa MacPorts en OS X 10.9 Mavericks, simplemente puede hacer:

sudo port install maven3
sudo port select --set maven maven3
Marc Smith
fuente
38

Para instalar Maven en OS X, vaya al sitio web de Apache Maven y descargue el archivo zip binario.

Luego puede cambiar la carpeta apache-maven-3.0.5 en su carpeta de Descargas a donde quiera guardar Maven; sin embargo, como el resto del proceso involucra la línea de comando, le recomiendo que haga todo desde allí.

En la línea de comando, ejecutarías algo como:

mv ~/Downloads/apache-maven-3.0.5 ~/Development/

Esta es solo mi preferencia personal: tener un directorio de "Desarrollo" en mi directorio de inicio. Puedes elegir otra cosa si lo deseas.

A continuación, edite ~ / .profile en el editor que elija y agregue lo siguiente:

export M2_HOME="/Users/johndoe/Development/apache-maven-3.0.5"
export PATH=${PATH}:${M2_HOME}/bin

La primera línea es importante para Maven (y debe ser una ruta explícita completa); la segunda línea es importante para el shell, para ejecutar el binario "mvn". Si ya tiene una variación de esa segunda línea en .profile, simplemente agregue $ {M2_HOME} / bin al final de la misma.

Ahora abra una segunda ventana de terminal y ejecute

mvn -version

que debería dar salida como ...

Apache Maven 3.0.5 (r01de14724cdef164cd33c7c8c2fe155faf9602da; 2013-02-19 13:51:28+0000)
Maven home: /Users/johndoe/Development/apache-maven-3.0.5
Java version: 1.7.0_40, vendor: Oracle Corporation
Java home: /Library/Java/JavaVirtualMachines/jdk1.7.0_40.jdk/Contents/Home/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "mac os x", version: "10.9", arch: "x86_64", family: "mac"

Un par de cosas a tener en cuenta:

  1. Si ha instalado Oracle JDK 1.7, puede encontrar informes de Maven JDK 1.6 en la salida anterior. Para resolver esto, agregue lo siguiente a su ~ / .profile:

    export JAVA_HOME = $ (/ usr / libexec / java_home)

  2. Como algunos han señalado, Maven se ha suministrado históricamente con OS X o con las Herramientas de línea de comandos opcionales para XCode. Este puede dejar de ser el caso para futuras versiones de OS X, y de hecho OS X Mavericks no incluye Maven. Opinión personal: Esto podría deberse a que todavía están en beta, o podría ser que Apple echó un vistazo al último radar de tecnología Thoughtworks y descubrió que Maven se movió a "Hold".

RCross
fuente
3
A partir del día después del lanzamiento de Mavericks, ya no viene con Maven. Sus instrucciones aquí ayudaron.
Bryce Fischer
Creo que he seguido estas instrucciones exactamente, incluso el ~ / Desarrollo. Pero apache-maven-3.0.5 no tiene subdirectorio "bin".
garyp
Vaya, descargué la distribución de origen, no el contenedor. Perdón por el ruido.
garyp
¿Cuál es el equivalente de .profile o .bash_profile para MAC OS Sierra (10.12.4)? Estoy tratando de instalar Maven y no tengo un .profile o un .bash_profile en mi cuenta de casa ...
Crenguta S
@CrengutaS Es ~ / .profile, pero el archivo no existe por defecto; Tienes que crearlo. Para obtener una explicación de por qué no hay .bash_profile, consulte la primera respuesta a apple.stackexchange.com/questions/119711/…
RCross
25

Solo una breve adición; si desea instalar una versión específica en MacOS usando Homebrew 1.5.2, puede instalarla de la siguiente manera:

  1. actualización de preparación
  2. Breve búsqueda maven

Esto te dará versiones maven disponibles en homebrew

  1. brew install [email protected]

[Si quieres instalar maven 3.3.]

zafar142003
fuente
12

Este comando brew install maven30no funcionó para mí. Se quejaba de una FÓRMULA faltante. Pero el siguiente comando funcionó. Tengo instalado maven-3.0.5.

brew install homebrew/versions/maven30

Esto es para Mac OS X 10.9, también conocido como Mavericks.

edufinn
fuente
1
Esta es la mejor respuesta para aquellos que tienen problemas con el muy defectuoso maven 3.1.1 que se brew install mavenestá instalando ahora.
Nacho L.
@ShajeelAfzal Necesitas instalar Homebrew . Se puede hacer con el siguiente comando:/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
edufinn
brew install homebrew/versions/maven32funciona para mí en Sierra
Tobi
Ahora recomendaría instalar la última versión de Maven con brew install maven.
edufinn
10

Si no desea instalar Homebrew solo para instalar Maven, simplemente puede hacer esto:

  1. Descargue el binario Maven y extraiga el zip

  2. Inicie la Terminal y escriba este comando:

    sudo ln -s /path_to_maven_folder/bin/mvn /usr/bin/mvn

Puedes encontrar más detalles en esta publicación .

Fred K
fuente
1
Recibo ln: /usr/bin/mvn: Operation not permittedrespuesta, creo que necesito seguir esto: stackoverflow.com/a/32661637/1773155 para resolver el problema.
Shajeel Afzal
en El-Capitan, descubrí que necesitaba entrar en / usr / local / bin / mvn. Parece la forma más limpia que el enlace stackvoerflow mencionado anteriormente
eric
7
brew install maven31 (if you have homebrew)
bjliu
fuente
7
  1. Terminal abierta
  2. Solo usa el comando brew para instalar maven
brew install maven
  1. Una vez finalizada la descarga e instalación. Comprueba la versión maven
mvn -version

Aqui tienes !!! Ahora ha instalado con éxito Maven en su Mac OS.

Ananta Chandra Das
fuente
1
Esta respuesta es solo un extracto de la publicación completa previamente respondida de Saurabh.
Hugo Allexis Cardona
6

para los que acaban de migrar a disidentes, utilicé la solución * -ux;

  1. descargar maven del sitio apache maven
  2. poner / optar
  3. .bash_profile modificado y agregado:

    alias mvn='/opt/apache-maven-3.1.1/bin/mvn'
    export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_21.jdk/Contents/Home
invitado
fuente
2
Gracias por esto. Sin embargo, probablemente solo deba agregar el directorio bin de maven a $ PATH.
Evan B.
¿Por qué hacerlo de la manera "rápida y sucia" cuando el sitio web de Maven que usó para descargar Maven le da instrucciones sobre cómo hacerlo de la "manera correcta"? Mira mi respuesta.
snooze92
Para deshacer estas tonterías, ejecutaunalias mvn
egorikem el
5

Dos métodos

  • (use homebrew) Auto :
    • Mando:
      • brew install maven
    • Pros y contras
      • Pros: fácil
      • Contras: (probablemente) no es la última versión
  • Instalar manualmente (para la última versión):
    • Pros y contras
      • Pros: use su versión esperada (o la última )
      • Contras: necesita uno mismo para hacerlo
    • Pasos
      • descargue la última versión binaria ( apache-maven-3.6.3-bin.zip ) de la descarga oficial de Maven
      • descomprimirlo ( apache-maven-3.6.3-bin.zip) y agregarlo maven patha la variable de entornoPATH
        • normalmente es editar y agregar:
          • export PATH=/path_to_your_maven/apache-maven-3.6.3/bin:$PATH
        • en su script de inicio ( ~/.bashrco ~/.zshrcetc.)

Nota extra

¿Cómo surtir efecto inmediatamente y comprobar que está instalado correctamente?

UNA:

source ~/.bashrc
echo $PATH
which mvn
mvn --version

aquí salida:

  bin pwd
/Users/crifan/dev/dev_tool/java/maven/apache-maven-3.6.3/bin
  bin ll
total 64
-rw-r--r--@ 1 crifan  staff   228B 11  7 12:32 m2.conf
-rwxr-xr-x@ 1 crifan  staff   5.6K 11  7 12:32 mvn
-rw-r--r--@ 1 crifan  staff   6.2K 11  7 12:32 mvn.cmd
-rwxr-xr-x@ 1 crifan  staff   1.5K 11  7 12:32 mvnDebug
-rw-r--r--@ 1 crifan  staff   1.6K 11  7 12:32 mvnDebug.cmd
-rwxr-xr-x@ 1 crifan  staff   1.5K 11  7 12:32 mvnyjp
  bin vi ~/.bashrc
  bin source ~/.bashrc
  ~ echo $PATH
/Users/crifan/dev/dev_tool/java/maven/apache-maven-3.6.3/bin:xxx
  bin which mvn
/Users/crifan/dev/dev_tool/java/maven/apache-maven-3.6.3/bin/mvn
  bin mvn --version
Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
Maven home: /Users/crifan/dev/dev_tool/java/maven/apache-maven-3.6.3
Java version: 1.8.0_112, vendor: Oracle Corporation, runtime: /Library/Java/JavaVirtualMachines/jdk1.8.0_112.jdk/Contents/Home/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "mac os x", version: "10.14.6", arch: "x86_64", family: "mac"

para más detalles, consulte mi publicación (en chino): 【已 解决】 Mac 中 安装 Gradle

crifan
fuente
4

Abra una ventana TERMINAL y verifique si ya la tiene instalada.

Tipo:

$ mvn –version

Y deberías ver:

Apache Maven 3.0.2 (r1056850; 2011-01-09 01:58:10+0100)
Java version: 1.6.0_24, vendor: Apple Inc.
Java home: /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
Default locale: en_US, platform encoding: MacRoman
OS name: “mac os x”, version: “10.6.7″, arch: “x86_64″, family: “mac”

Si aún no tiene instalado Maven, aquí le mostramos cómo descargar e instalar Maven y configurar las variables de entorno en Mac OS X:

http://bitbybitblog.com/install-maven-mac/

usuario1187534
fuente
2

En Maverick, ejecute en la terminal xcode-select --install para instalar las herramientas de línea de comandos.

Elijah Saounkine
fuente
Si intenta instalar Homebrew, esto sucederá automáticamente si aún no tiene instaladas las herramientas.
JavaCoderEx
2

Puede usar Maven Version Manager a través del cual puede usar múltiples versiones de Maven por base de directorio.

Instalación

Usando Homebrew brew install mvnvm

Sin Homebrew mkdir -p ~/bin && curl -s https://bitbucket.org/mjensen/mvnvm/raw/master/mvn > ~/bin/mvn && chmod 0755 ~/bin/mvny agregar ~/bina la ruta.

Uso

Versión predeterminada

Para configurar la versión predeterminada de Maven, configure la variable de entorno DEFAULT_MVN_VERSION a la versión de maven que se utilizará de forma predeterminada.

Versión de Maven para la carpeta

Cree un archivo nombrado mvnvm.propertiesen la carpeta y configure la versión de Maven de la siguiente manera

mvn_version=<maven version>

Karthikeyan Vaithilingam
fuente
1
% sudo port selfupdate; 
% sudo port upgrade outdated;
% sudo port install maven3;
% sudo port select --set maven maven3;

— add following to .zshenv -- start using zsh if you dont —
set -a
[[ -d /opt/local/share/java/maven3 ]] &&
    M3_HOME=/opt/local/share/java/maven3 &&
    M2_HOME=/opt/local/share/java/maven3 &&
    MAVEN_OPTS="-Xmx1024m" &&
    M2=${M2_HOME}/bin
set +a
yuzhewo
fuente
1

Puedes instalar maven usando homebrew. El comando es $ brew install maven

Shivam Kohli
fuente
Esto es completamente redundante, ¡hay otras 8 respuestas que dicen exactamente lo mismo!
Mark Han
1

Después de instalar maven usando brew o manualmente, usando macOS Catalina y usando el terminal o iTerm para operar maven, deberá otorgar acceso a las aplicaciones para acceder a los archivos de los usuarios.

Preferencias del sistema -> Privacidad (botón) -> Acceso total al disco

Y luego agregue terminal o iTerm a esa lista.

También necesitará reiniciar su aplicación, por ejemplo, terminal o iTerm después de darles acceso completo al disco.

dirbacke
fuente
0

Para aquellos que quieran usar maven2 en Mavericks, escriba:

brew tap homebrew/versions

brew install maven2

Si ya ha instalado maven3, haga una copia de seguridad de 3 enlaces (mvn, m2.conf, mvnDebug) en /usr/local/binprimer lugar:

mkdir bak

mv m* bak/

luego reinstalar:

brew uninstall maven2(solo cuando está en conflicto)

brew install maven2

Anderson
fuente