Avoir un problème d’incohérence de JAVA_HOME avec maven

Je suis sur le sharepoint publier un projet mais JAVA_HOME semble avoir été incohérent. Peut-être a-t-il été remplacé ailleurs? J’utilise Ubuntu 14.04 et j’ai openjdk-7, java-7-oracle, java-8-oracle. Java par défaut a été défini à l’aide de update-java-alternatives

java -version

 java version "1.8.0_25" Java(TM) SE Runtime Environment (build 1.8.0_25-b17) Java HotSpot(TM) 64-Bit Server VM (build 25.25-b02, mixed mode) 

mvn -version donne la sortie suivante

 Apache Maven 3.2.1 (ea8b2b07643dbb1b84b6d16e1f08391b666bc1e9; 2014-02-14T17:37:52+00:00) Maven home: /usr/share/maven3 Java version: 1.8.0_25, vendor: Oracle Corporation Java home: /usr/lib/jvm/java-8-oracle/jre Default locale: en_US, platform encoding: UTF-8 OS name: "linux", version: "3.13.0-39-generic", arch: "amd64", family: "unix" 

Mais quand mvn release: prepare, voici ce que je vois:

 [INFO] Not generating release POMs [INFO] Executing goals 'clean verify'... [WARNING] Maven will be executed in interactive mode, but no input stream has been configured for this MavenInvoker instance. [INFO] Error: JAVA_HOME is not defined correctly. [INFO] We cannot execute /usr/lib/jvm/java-8-oracle/bin/java/bin/java 

Il semble que l’exécuteur Java soit recherché dans le mauvais dossier: /java/bin/java . J’ai essayé de changer java home en /usr/lib/jvm/java-8-orable/bin mais cela a mvn-version vérification de la mvn-version .

Comment régler ceci? Merci d’avoir lu

Je ne peux pas trouver ici pour résoudre ce problème. Quelqu’un at-il rencontré quelque chose de similaire?

EDIT 1:

      org.apache.maven.plugins maven-surefire-plugin 2.12   **/*ITest.java     maven-failsafe-plugin 2.6    integration-test verify      org.apache.maven.plugins maven-comstackr-plugin 2.0.2  1.7 1.7 ${project.build.sourceEncoding} 128m 512m    org.apache.maven.plugins maven-resources-plugin 2.4.3  ${project.build.sourceEncoding}    org.apache.maven.plugins maven-release-plugin 2.3.2  clean verify https://xxxx/svn/projectname/tags    com.mysema.maven maven-apt-plugin 1.0   org.codehaus.mojo build-helper-maven-plugin 1.9     

Je suis passé à java-7-oracle et toujours aucune chance:

 [INFO] Executing goals 'clean verify'... [WARNING] Maven will be executed in interactive mode, but no input stream has been configured for this MavenInvoker instance. [INFO] Error: JAVA_HOME is not defined correctly. [INFO] We cannot execute /usr/lib/jvm/java-7-oracle/bin/java/bin/java 

EDIT 2:

Chers électeurs, Je ne vous demande pas d’aide pour configurer Java Home. Il a été mis à

 /usr/lib/jvm/java-8-oracle 

Puis à la suite lorsque j’ai essayé d’exécuter la même chose avec Java 7

 /usr/lib/jvm/java-7-oracle 

Ceci est défini dans /etc/profile.d/jdk.sh par le script webup8

 export J2SDKDIR=/usr/lib/jvm/java-7-oracle export J2REDIR=/usr/lib/jvm/java-7-oracle/jre export PATH=$PATH:/usr/lib/jvm/java-7-oracle/bin:/usr/lib/jvm/java-7-oracle/db/bin:/usr/lib/jvm/java-7-oracle/jre/bin export JAVA_HOME=/usr/lib/jvm/java-7-oracle export DERBY_HOME=/usr/lib/jvm/java-7-oracle/db 

EDIT 3

J’ai basculé sur openjdk 7 et modifié le fichier jdk.sh afin de refléter cette export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-amd64 et l’erreur a export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-amd64 . Je cours vers d’autres problèmes connus (problèmes d’permissions dans le dossier des tags. Bizarre). Donc, ce n’est pas lié au maven lui-même, je suppose. Mais c’est bizarre que cela fonctionne bien pour openjdk …

JAVA_HOME doit pointer vers jre, pas jdk. Puis définissez:

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

Créer un fichier .mavenrc sur mon dossier personnel et append le code ci-dessous ont résolu le problème. (Ubuntu 14.10, Maven 3.2.1)

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

Une autre solution de contournement:

 export JAVACMD=$JAVA_HOME/bin/java 

la définition de / usr / lib / jvm / java ⇒ /usr/java/jdk1.7.0_45 ne fonctionnait pas pour moi

Je passe assez de temps à aborder une erreur similaire. Il semble que le gestionnaire de paquets puisse créer des dégâts dans les installations Java. Le chemin d’access à Java est parfois codé en dur dans des fichiers bash. J’en ai trouvé un dans /etc/profile.d/jdk.sh . Il remplace simplement vos parameters. Une autre solution consiste à mettre à jour le lien symbolique. Dans mon cas, il s’agissait de /usr/lib/jvm/java ⇒ /usr/java/jdk1.7.0_45 . Essayez de chercher du texte java/bin dans tous les fichiers bash.

en super privilège sur votre terminal ouvert

 vi etc/environment 

sur le fichier ouvert, ajoutez le chemin JAVA_HOME

 JAVA_HOME="/usr/lib/jvm/java-7-openjdk-i386/" 

J’espère que vous définissez la vérification JAVA_HOME si votre JAVA_HOME est défini à l’aide de la commande

 echo $JAVA_HOME 

J’ai utilisé OpenJDK comme java par défaut, JAVA_HOME mis à jour dans / etc / environment et tous les problèmes sont passés. Merci pour tous vos efforts pour m’aider à traverser cette

J’ai eu le même problème. Ma solution de contournement était:

 cd /usr/lib/jvm/java-8-oracle/jre/bin sudo ln -s /usr/lib/jvm/java-8-oracle/bin/java java