Я нахожусь на грани выпуска проекта, но, похоже, JAVA_HOME несовместим. Может быть, это было переопределено где-то еще? Я использую ubuntu 14.04, и у меня есть openjdk-7, java-7-oracle, java-8-oracle. По умолчанию Java был установлен с помощью update-java-alternatives
Проблемы с несоответствием JAVA_HOME с maven
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)
МВН -version дает следующий вывод
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"
Но при выполнении МВН-релиз: подготовка, ниже того, что я вижу:
[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
Похоже, что исполнитель java находится в неправильной папке : /java/bin/java
. Я пробовал изменить java домой на /usr/lib/jvm/java-8-orable/bin
, но он сломал mvn-version
чек.
Как это исправить? Спасибо за чтение
Не могу найти здесь, чтобы исправить это. Кто-нибудь сталкивался с чем-то похожим?
EDIT 1:
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.12</version>
<configuration>
<excludes>
<exclude>**/*ITest.java</exclude>
</excludes>
</configuration>
</plugin>
<plugin>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.6</version>
<executions>
<execution>
<goals>
<goal>integration-test</goal>
<goal>verify</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.0.2</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
<encoding>${project.build.sourceEncoding}</encoding>
<meminitial>128m</meminitial>
<maxmem>512m</maxmem>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>2.4.3</version>
<configuration>
<encoding>${project.build.sourceEncoding}</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<preparationGoals>clean verify</preparationGoals>
<tagBase>https://xxxx/svn/projectname/tags</tagBase>
</configuration>
</plugin>
<plugin>
<groupId>com.mysema.maven</groupId>
<artifactId>maven-apt-plugin</artifactId>
<version>1.0</version>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>1.9</version>
</plugin>
</plugins>
</pluginManagement>
</build>
Я переключился на Java-7-оракула и до сих пор нет шансов:
[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:
Уважаемая вниз избирателей, Я не прошу о том, как установить Java Home. Это было установлено в
/usr/lib/jvm/java-8-oracle
Тогда на следующий, когда я попытался запустить то же самое с Java 7
/usr/lib/jvm/java-7-oracle
Это устанавливается в /etc/profile.d/jdk.sh по 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
у меня есть переключатели на d to openjdk 7, отредактировал jdk.sh, чтобы отразить это export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-amd64
, и ошибка пошла. Я запускаю другие известные проблемы (проблемы с разрешениями на теги папки странные). Так что это не связано с самим maven, я думаю. Но это странно, что он отлично работает для openjdk ...
У вас есть полный JDK установлен или только JRE? Работает ли он с java-7? Какие параметры компилятора находятся в вашем pom? – Dmytro
есть полный jdk был установлен. не работает с java 7. Я отредактировал post.thanks –
возможный дубликат [Как установить Oracle в качестве Java по умолчанию в Ubuntu?] (Http://stackoverflow.com/questions/6477415/how-to-set-oracles-java-as- the-default-java-in-ubuntu) – Joe