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