Installation de Maven sur Mac OS X


546

J'essaie d'installer maven via le terminal en suivant ces instructions .

Jusqu'à présent, je l'ai

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

C'est probablement une question stupide où allez-vous trouver cela?


Qu'est -ce que vous essayez de trouver? Avec les variables d'environnement telles que vous les avez répertoriées, vous devriez pouvoir invoquer l' mvnexécutable depuis votre fenêtre de terminal.
Sri Sankaran

Si, comme dans mon cas, vous essayez de rétrograder de Maven 3 à Maven 2, consultez cet excellent blog: blog.frau-klein.org/2011/04/…
Jeff

2
Edgardo Je pense que vous devriez décocher la réponse cochée si vous le pouvez ...
jcollum

Réponses:


208

OS X avant Mavericks (10.9) est en fait livré avec Maven 3 intégré.

Si vous êtes sous OS X Lion, java ne sera pas installé par défaut. Exécutez simplement javapar lui-même et il vous demandera de l'installer.

En supposant que les qualifications sont remplies, exécutez mvn -versionet voyez des résultats comme celui-ci:

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"

1
Si, pour une raison quelconque, vous avez besoin de maven 2 sur lion, vous devez le télécharger, définir votre M2_HOME, puis vous devez vous assurer que, où que vous l'ayez installé, il précède / usr / bin sur votre chemin, ou permutez le / usr / bin / mvn out pour un lien symbolique vers le vôtre. Je sais que beaucoup de gens travaillent toujours sur des trucs avec maven 2, moi y compris.
Michael

3
Juste pour info, Mountain Lion est également livré avec 3.0.3.
Michael

389
Mise à jour, avec OSX 10.9 Maverick, Maven n'est plus installé par défaut.
Jerry Tian

14
@Michael J'ai installé Java sur Maverick, mais il n'a pas installé Maven pour moi.
Swapnil

6
Yosemite n'inclut pas maven dans le cadre de l'installation, avec java ou avec les outils de ligne de commande xcode.
Michael

1899

Alternativement, je recommande d'installer Homebrew pour ces types d'utilitaires.

Ensuite, vous installez simplement Maven en utilisant:

brew install maven

PS: si vous avez une erreur 404, essayez de faire brew updatejuste avant


164
Dans OS X 10.9 Mavericks, car aucun maven n'est installé (au moins dans la version bêta), c'est la bonne réponse.
Nacho L.

9
C'est une seule réponse, mais pas exclusivement la «bonne». Le téléchargement du zip binaire Maven à partir du site Web Maven est plus rapide et plus facile IMO.
RCross

16
Sur OS X 10.9, vous devriez utiliser brew install maven30car maven 3.1.1 semble être bogué.
tadeuzagallo

18
brew install homebrew/versions/maven30a fait pour moi. Merci @TadeuZagallo !!
fmquaglia

16
Plus besoin de l'utiliser brew install maven30car la version 3.2.1 la plus récente est assez rapide et ne semble pas avoir les bugs de la 3.1.1.
Michael Hogenson

240

Clause de non - responsabilité : voici une réponse complète tenant compte de la dernière version d'OS X (10.9 AKA Mavericks). Je suis conscient que tout ce que j'ai compilé dans cette réponse est déjà présent dans la page, mais l'avoir clairement dans une réponse le rend beaucoup plus clair.

Tout d'abord, avec les versions précédentes d'OS X, Maven est installé par défaut. Si Java est manquant, l'exécution you@host:~ $ javadans un terminal vous demandera l'installation de Java.

Avec Mac OS X 10.9 (Mavericks), Maven n'est plus installé par défaut. Différentes options sont alors possibles:

  • Utilisation de Homebrew :
    • you@host:~$ brew install maven installera le dernier Maven (3.5.2 le 02/01/2018)
    • you@host:~$ brew install maven30 installera Maven 3.0 si nécessaire
  • Utilisation de Macports : (je n'ai pas testé cela)
    • you@host:~$ sudo port install maven va installer le dernier Maven (?)
    • ou:
    • you@host:~$ sudo port install maven3 va installer Maven 3.0
    • you@host:~$ sudo port select --set maven maven3 sélectionne cette version de Maven
  • Installation à la main:
    • Téléchargez Maven depuis sa page d'accueil
    • Suivez les instructions d'installation:
      1. Extrayez l'archive de distribution, c'est- apache-maven-3.3.9-bin.tar.gzà- dire dans le répertoire dans lequel vous souhaitez installer Maven 3.3.9. Le sous apache-maven-3.3.9- répertoire sera créé à partir de l'archive.
      2. Facultatif : ajoutez la variable d'environnement MAVEN_OPTS pour spécifier les propriétés JVM, par exemple export MAVEN_OPTS="-Xms256m -Xmx512m". Cette variable d'environnement peut être utilisée pour fournir des options supplémentaires à Maven.
      3. Assurez-vous que JAVA_HOME est défini sur l'emplacement de votre JDK, par exemple export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)et qu'il se $JAVA_HOME/bintrouve dans votre PATHvariable d'environnement (bien que cela puisse ne pas être nécessaire avec les dernières versions de Mac OS X et Oracle JDK).
      4. Ajouter extrait apache-maven-3.3.9/binà votre$PATH
      5. Exécutez mvn --versionpour vérifier qu'il est correctement installé.

6
sudo port install maven3installe Maven 3.0.5.
njudge

3
Lors de l'installation à la main, plutôt que de fouiller pour essayer de trouver JAVA_HOME, pensez à utiliser export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)(cf. cette réponse ). De plus (au moins sur Mavericks et Yosemite avec Oracle JDK 1.8), vous ne devriez pas avoir besoin $JAVA_HOME/binsur votre chemin car tout est lié par un lien symbolique /usr/bin.
David Moles

Vous avez raison sur la meilleure façon de définir JAVA_HOME! Je ne connaissais pas les liens symboliques mais j'ai modifié ma réponse pour inclure vos remarques. Merci
snooze92

1
mieux ajouter les exportinstructions pour ~/.bash_profilele rendre disponible dans toutes les sessions, voir ce post pour plus de détails
Miranda

Mieux que quoi, @Miranda? Je n'ai pas précisé où faire les exports dans l' option "installation manuelle" car je pense que les personnes choisissant l'installation manuelle savent le mieux où elles souhaitent effectuer ces exportations. C'est assez spécifique à chaque personne et à chaque système, je pense.
snooze92

89

Lorsque j'ai récemment mis à niveau vers OS X Mavericks et que mes versions de Maven commencent à échouer. J'ai donc dû réinstaller maven car il n'est pas intégré. J'ai ensuite essayé avec la commande:

brew install maven 

cela fonctionne, mais il installe la version 3.1.1 de maven qui pose des problèmes à quelques utilisateurs comme ( https://cwiki.apache.org/confluence/display/MAVEN/AetherClassNotFound ). Donc, si vous rencontrez le même problème, vous souhaiterez probablement installer la version antérieure de Maven, la 3.0.5. Pour ce faire avec Homebrew, vous devez exécuter la commande suivante:

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

Ça y est, il utilisera alors des formules d'un Homebrew différent qui vous donneront le maven 3.0.5 à la place.


Le fichier brut est actuellement 503-ing sporadiquement. Quand cela a fonctionné, je l'ai enregistré dans un fichier local.
NRitH

1
J'ai dû éditer manuellement le fichier de brassage pour éviter un 404. 'brew edit maven'. J'ai codé en dur dans l'un des miroirs pour l'url et j'ai également dû changer la somme de contrôle «sha». url ' apache.mesi.com.ar/maven/maven-3/3.0.4/binaries/… ' sha1 'aecc0d3d67732939c0056d4a0d8510483ee1167e'
Derek

Assurez-vous également d' brew updateobtenir la dernière version avant de le faire brew install maven, si vous souhaitez que brew installe maven 3.1.1+.
Gary S. Weaver

2
brew install maven30
timomeinen

1
Je viens de l'utiliser brew install mavenet il a installé 3.0.5. Voici ce qui s'imprime quand je le fais 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 à partir de

brew install maven


3
Bien que cet extrait de code puisse résoudre la question, y compris une explication aide vraiment à améliorer la qualité de votre message. N'oubliez pas que vous répondrez à la question des lecteurs à l'avenir et que ces personnes ne connaissent peut-être pas les raisons de votre suggestion de code. Essayez également de ne pas surcharger votre code avec des commentaires explicatifs, cela réduit la lisibilité du code et des explications!
kayess

1
Si vous obtenez «commande brew introuvable», vous devez d'abord installer brew. C'est un lien vers le site Web brew.sh C'est la commande à installer/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
3akat

40

Si vous utilisez MacPorts sur OS X 10.9 Mavericks, vous pouvez simplement faire:

sudo port install maven3
sudo port select --set maven maven3

38

Pour installer Maven sur OS X, accédez au site Web d'Apache Maven et téléchargez le fichier zip binaire.

Vous pouvez ensuite déplacer le dossier apache-maven-3.0.5 dans votre dossier Téléchargements vers l'endroit où vous souhaitez conserver Maven; cependant, comme le reste du processus implique la ligne de commande, je vous recommande de tout faire à partir de là.

Sur la ligne de commande, vous exécuteriez quelque chose comme:

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

C'est juste ma préférence personnelle - avoir un répertoire "Développement" dans mon répertoire personnel. Vous pouvez choisir autre chose si vous le souhaitez.

Ensuite, modifiez ~ / .profile dans l'éditeur de votre choix et ajoutez ce qui suit:

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

La première ligne est importante pour Maven (et doit être un chemin explicite complet); la deuxième ligne est importante pour le shell, afin d'exécuter le binaire "mvn". Si vous avez déjà une variante de cette deuxième ligne dans .profile, ajoutez simplement $ {M2_HOME} / bin à la fin.

Maintenant, ouvrez une deuxième fenêtre de terminal et exécutez

mvn -version

qui devrait donner une sortie comme ...

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"

Quelques choses à noter:

  1. Si vous avez installé Oracle JDK 1.7, vous pouvez trouver Maven rapports JDK 1.6 dans la sortie ci-dessus. Pour résoudre ce problème, ajoutez ce qui suit à votre ~ / .profile:

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

  2. Comme certains l'ont souligné, Maven a toujours été fourni soit avec OS X lui-même, soit avec les outils de ligne de commande facultatifs pour XCode. Cela peut cesser d'être le cas pour les futures versions d'OS X, et en fait OS X Mavericks n'inclut pas Maven. Opinion personnelle: Cela pourrait être dû au fait qu'ils sont encore en version bêta, ou il se peut qu'Apple ait jeté un œil au dernier radar technologique de Thoughtworks et ait remarqué que Maven a été déplacé vers "Hold".


3
Le lendemain de la sortie de Mavericks, il n'est plus livré avec Maven. vos instructions ici ont aidé.
Bryce Fischer

Je pense que j'ai suivi ces instructions exactement, même le ~ / Development. Mais apache-maven-3.0.5 n'a pas de sous-répertoire "bin".
garyp

Oups, j'ai téléchargé la distribution source, pas le bac. Désolé pour le bruit.
garyp

Quel est l'équivalent de .profile ou .bash_profile pour MAC OS Sierra (10.12.4)? J'essaie d'installer maven et je n'ai pas de .profile ou de .bash_profile dans mon compte personnel ...
Crenguta S

@CrengutaS C'est ~ / .profile, mais le fichier n'existe pas par défaut; vous devez le créer. Pour une explication des raisons pour lesquelles il n'y a pas de .bash_profile, voir la première réponse à apple.stackexchange.com/questions/119711/…
RCross


25

Juste un bref ajout; si vous souhaitez installer une version spécifique sur MacOS à l'aide de Homebrew 1.5.2, vous pouvez l'installer de la manière suivante:

  1. mise à jour de brassage
  2. recherche de bières maven

Cela vous donnera des versions de maven disponibles en homebrew

  1. installation de brassage maven@3.3

[Si vous souhaitez installer maven 3.3.]


12

Cette commande brew install maven30n'a pas fonctionné pour moi. Se plaignait d'une FORMULE manquante. Mais la commande suivante a fonctionné. J'ai installé maven-3.0.5.

brew install homebrew/versions/maven30

C'est pour Mac OS X 10.9 alias Mavericks.


1
C'est la meilleure réponse pour ceux qui ont des problèmes avec le très buggy maven 3.1.1 qui brew install mavens'installe maintenant.
Nacho L.

@ShajeelAfzal Vous devez installer Homebrew . Peut être fait avec la commande suivante:/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
edufinn

brew install homebrew/versions/maven32travaille pour moi sur Sierra
Tobi

Maintenant, je recommanderais d'installer le dernier Maven avec brew install maven.
edufinn

10

Si vous ne souhaitez pas installer Homebrew uniquement pour installer Maven, vous pouvez simplement le faire:

  1. Téléchargez le Maven binaire et extrayez le zip

  2. Lancez le terminal et tapez cette commande:

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

Vous pouvez trouver plus de détails sur ce post .


1
Je reçois une ln: /usr/bin/mvn: Operation not permittedréponse, je pense que je dois suivre ceci: stackoverflow.com/a/32661637/1773155 pour résoudre le problème.
Shajeel Afzal

à El-Capitan, j'ai trouvé qu'il fallait aller dans / usr / local / bin / mvn. Semble la manière plus propre que le lien stackvoerflow référencé ci - dessus
eric


7
  1. Terminal ouvert
  2. Utilisez simplement la commande brew pour installer maven
brew install maven
  1. Une fois le téléchargement et l'installation terminés. Vérifiez la version maven
mvn -version

Voici !!! Vous avez maintenant installé avec succès maven sur votre Mac OS.


1
Cette réponse n'est qu'un extrait du message complet de Saurabh précédemment répondu.
Hugo Allexis Cardona

6

pour ceux qui viennent de migrer vers des non-conformistes - j'ai utilisé la solution * -ux;

  1. télécharger maven depuis le site apache maven
  2. mettre / opt
  3. .bash_profile modifié et ajouté:

    alias mvn='/opt/apache-maven-3.1.1/bin/mvn'
    export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_21.jdk/Contents/Home

2
Merci pour cela. Vous devriez probablement simplement ajouter le répertoire bin maven au $ PATH.
Evan B.

Pourquoi faire la "façon rapide et sale" lorsque le site Web Maven que vous avez utilisé pour télécharger maven vous donne des instructions sur la façon de le faire "de la bonne façon"? Voir ma réponse.
snooze92

Pour annuler cette absurdité, exécutezunalias mvn
egorikem

5

Deux méthode

  • (utiliser homebrew) Auto Installation :
    • Commander:
      • brew install maven
    • Avantages et inconvénients
      • Avantages: facile
      • Inconvénients: (probablement) pas la dernière version
  • ManuellementInstaller (pour la dernière version):
    • Avantages et inconvénients
      • Avantages: utilisez la version que vous attendez (ou la dernière )
      • Inconvénients: besoin de soi pour le faire
    • Pas
      • télécharger la dernière version binaire ( apache-maven-3.6.3-bin.zip ) du téléchargement officiel de Maven
      • décompressez-le ( apache-maven-3.6.3-bin.zip) et ajouté maven pathà la variable d'environnementPATH
        • est normalement modifier et ajouter:
          • export PATH=/path_to_your_maven/apache-maven-3.6.3/bin:$PATH
        • dans votre script de démarrage ( ~/.bashrcou ~/.zshrcetc.)

Remarque supplémentaire

comment prendre effet immédiatement et vérifier correctement installé?

UNE:

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

ici sortie:

  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"

pour plus de détails, veuillez vous référer à mon message (chinois): le 已 解决】 Mac 中 安装 Gradle


4

Ouvrez une fenêtre TERMINAL et vérifiez si vous l'avez déjà installée.

Type:

$ mvn –version

Et vous devriez voir:

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 vous n'avez pas encore installé Maven, voici comment télécharger et installer maven et configurer les variables d'environnement sur Mac OS X:

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


2

Sur Maverick, exécutez dans le terminal xcode-select --install pour installer les outils de ligne de commande.


Si vous essayez d'installer Homebrew, cela se produira automatiquement si vous n'avez pas déjà installé les outils.
JavaCoderEx


2

Vous pouvez utiliser Maven Version Manager à travers lequel vous pouvez utiliser plusieurs versions de Maven par base de répertoire.

Installation

Utiliser Homebrew brew install mvnvm

Sans Homebrew mkdir -p ~/bin && curl -s https://bitbucket.org/mjensen/mvnvm/raw/master/mvn > ~/bin/mvn && chmod 0755 ~/bin/mvnet ajouter ~/binau chemin.

Usage

Version par défaut

Pour définir la version par défaut de maven, définissez la variable d'environnement DEFAULT_MVN_VERSION sur la version maven à utiliser par défaut.

Version Maven pour le dossier

Créez un fichier nommé mvnvm.propertiesdans le dossier et configurez la version de maven comme suit

mvn_version=<maven version>


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

1

Vous pouvez installer maven en utilisant homebrew. La commande est $ brew install maven


C'est entièrement redondant, il y a 8 autres réponses qui disent exactement la même chose!
Mark Han

1

Après avoir installé maven en utilisant brew ou manuellement, en utilisant macOS Catalina et en utilisant le terminal ou iTerm pour faire fonctionner maven, vous devrez accorder l'accès aux applications pour accéder aux fichiers utilisateur.

Préférences système -> Confidentialité (bouton) -> Accès complet au disque

Et puis ajoutez un terminal ou iTerm à cette liste.

Vous devrez également redémarrer votre application, par exemple le terminal ou iTerm, après leur avoir donné un accès complet au disque.


0

Pour ceux qui veulent utiliser maven2 dans Mavericks, tapez:

brew tap homebrew/versions

brew install maven2

Si vous avez déjà installé maven3, sauvegardez 3 liens (mvn, m2.conf, mvnDebug) en /usr/local/binpremier:

mkdir bak

mv m* bak/

puis réinstallez:

brew uninstall maven2(uniquement en cas de conflit)

brew install maven2

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.