Come modificare maven java casa

Voglio cambiare maven java casa che è open jdk con sun jdk. Come posso fare ?

[email protected]-EasyNote-TM98:~# mvn -version
Apache Maven 3.0.4
Maven home: /usr/share/maven
Java version: 1.6.0_24, vendor: Sun Microsystems Inc.
Java home: /usr/lib/jvm/java-6-openjdk-amd64/jre
Default locale: tr_TR, platform encoding: UTF-8
OS name: "linux", version: "3.2.0-34-generic", arch: "amd64", family: "unix"

Edit:

Dispiace tanto. Ho dimenticato di scrivere il seguente codice :

[email protected]-EasyNote-TM98:~$ java -version
java version "1.7.0_07"
Java(TM) SE Runtime Environment (build 1.7.0_07-b10)
Java HotSpot(TM) 64-Bit Server VM (build 23.3-b01, mixed mode)

La mia versione di java casa percorso di default è sun jdk già. Ma maven java casa ha indicato openjdk. Voglio farlo solo per maven.

InformationsquelleAutor RockOnGom | 2012-12-06

 

8 Replies
  1. 51

    Se sei in Linux, set JAVA_HOME utilizzando la sintassi export JAVA_HOME=<path-to-java>. In realtà non è solo per Maven.

    • Per coloro che non sanno dove oracle-java è installato, è possibile trovare prima eseguendo which java che vi dirà che il binario di java è chiamato. Nel mio caso è stato /usr/bin/java. A questo punto è possibile eseguire readlink -f /usr/bin/java, che per me ha reso /usr/lib/jvm/java-7-oracle/jre/bin/java ergo export JAVA_HOME=/usr/lib/jvm/java-7-oracle/jre/
    • Funziona solo per l’attuale finestra di Terminale o modificare le proprietà di sistema?
    • aiuto in una riga: export JAVA_HOME=`readlink -f \`command -v java\``
  2. 27

    Sono utilizzando Mac e nessuna delle risposte sopra mi ha aiutato. Ho scoperto che maven carica il proprio JAVA_HOME dal percorso specificato: ~/.mavenrc

    Ho cambiato il contenuto del file: JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home

    Per Linux un qualcosa di simile a:

    JAVA_HOME=/usr/lib/jvm/java-8-oracle/jre

    • Funziona anche su Linux; un qualcosa di simile a JAVA_HOME=/usr/lib/jvm/java-8-oracle/jre.
    • Ho aggiunto la parte Linux per la risposta. Io non l’ho provato. La prego di dirmi se funziona.
    • Grazie, grazie, grazie. Il mio stupido auto di 4 anni fa mi ha causato questo dolore che hai risolto. 🙂
    • Non funziona per me. Sto lavorando su Windows 7.
    • O meglio ancora, basta rimuovere .mavenrc (o almeno la riga che specifica JAVA_HOME), e maven di default è normale JAVA_HOME.
  3. 4

    Grande aiuta sopra, ma se si hanno la simile ambiente come ho fatto io, questo è come riesco a farlo funzionare.

    • avendo un paio di jdk in esecuzione, openjdk, oracle jdk e un paio di versioni.
    • installare apache maven tramite yum, pacchetto apache-maven-3.2.1-1.el6.noarch

    Modificare il file /etc/profile.d/apache-maven.sh, ad esempio, nota che interesserà l’intero sistema.

    $ cat /etc/profile.d/apache-maven.sh
    MAVEN_HOME=/usr/share/apache-maven
    M2_HOME=$MAVEN_HOME
    PATH=$MAVEN_HOME/bin:$PATH
    # change below to the jdk you want mvn to reference.
    JAVA_HOME=/usr/java/jdk1.7.0_40/
    export MAVEN_HOME
    export M2_HOME
    export PATH
    export JAVA_HOME
  4. 4

    Il modo migliore per forza una JVM specifica per MAVEN è quello di creare un file caricato da mvn script.

    Questo file è /etc/mavenrc e deve dichiarare un JAVA_HOME variabile di ambiente che puntano al tuo specifico JVM.

    Esempio:

    export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64

    Se il file esiste, è caricato.

    Qui è un estratto della mvn script per capire :

     if [ -f /etc/mavenrc ] ; then 
    . /etc/mavenrc 
    fi 
    
    if [ -f "$HOME/.mavenrc" ] ; then 
    . "$HOME/.mavenrc" 
    fi 
    

    In alternativa, lo stesso contenuto può essere scritto in ~/.mavenrc

  5. 3

    Anche se si installa Oracle JDK, il $JAVA_HOME variabile deve fare riferimento al percorso di JRE che si trova all’interno la JDK di root. È possibile fare riferimento a altra mia risposta a una domanda simile per ulteriori dettagli.

    • Grazie. Risolto il mio problema. Se la JAVA_HOME stato che mostra la JDK di root, quindi di Sicuro ha preso JDK/bin/java come JAVA_HOME per la sua forcella JVM, che è falso. Salvato il mio giorno. Grazie
  6. 0

    Ho due versioni di Java sul mio server Ubuntu 14.04: java 1.7 e java 1.8.

    Ho un progetto che ho bisogno di costruire utilizzando java 1.8.

    Se posso controllare la mia versione di Java che utilizza java -version

    Ho

    java version "1.8.0_144"

    Ma quando ho fatto mvn -version ho fatto io:

    Java version: 1.7.0_79, vendor: Oracle Corporation

    Per impostare il mvn versione java8

    Faccio questo:

    export JAVA_HOME=/usr/lib/jvm/java-8-oracle/jre/

    Poi quando faccio mvn -version ho fatto io:

    Java version: 1.8.0_144, vendor: Oracle Corporation

Lascia un commento