странная проблема с зависимостями JAVA_HOME и maven - PullRequest
14 голосов
/ 19 марта 2011

У меня для переменной JAVA_HOME установлено значение C:\Program Files\Java\jre6\, когда я запускаю пакет maven в проекте, он говорит мне, что не может разрешить зависимость

[ERROR] Failed to execute goal org.codehaus.mojo:aspectj-maven-plugin:1.0:compile (default) on project roo: Execution default of goal o
rg.codehaus.mojo:aspectj-maven-plugin:1.0:compile failed: Plugin org.codehaus.mojo:aspectj-maven-plugin:1.0 or one of its dependencies
could not be resolved: Could not find artifact com.sun:tools:jar:1.4.2 at specified path C:\Program Files\Java\jre6/../lib/tools.jar ->
[Help 1]

, поэтому предполагается, что JAVA_HOME на самом деле на один уровень глубже, чемна самом деле, я просмотрел локальный репозиторий maven и обнаружил, что log4j 1.2.16 использует эту зависимость

Я пытался сделать JAVA_HOME похожим на C:\Program Files\Java\jre6\bin\, но затем maven не запустился, он сказал мне, что мой путь JAVA_HOMEбыл неправ

Ответы [ 15 ]

0 голосов
/ 31 августа 2013

Для запуска Maven - необходимо настроить переменную среды JAVA_HOME, чтобы она указывала на JDK

, например, JAVA_HOME = C: \ Program Files \ Java \ jdk1.7.0_25

Также вынеобходимо, чтобы C: \ Program Files \ Java \ jdk1.7.0_25 \ bin был включен в переменную среды PATH.

С уважением, Дипан

0 голосов
/ 31 июля 2013

Правильный способ настройки переменных среды JAVA: -

  1. Установите JAVA_HOME в папку "jdk folder" \ jre
  2. Добавьте "папку jdk" \ bin в пользовательскую среду PATHпеременная

JAVA_HOME - это местоположение "java.exe", которое должно быть из папки JRE \ bin.PATH должен искать javac.exe, который должен прийти из папки JDK \ bin.

Это также обеспечивает совместимость JDK и JRE

0 голосов
/ 08 июля 2013

Я смог увидеть соответствующий ответ в командной строке при вводе java -version, но получил эту ошибку при наборе mvn -version.

В моем случае это была глупая ошибка.Все эти дни переменная окружения JAVA_HOME указывала на папку ..\jdk\bin, и это вызывало проблему.После удаления бина из значения переменной JAVA_HOME я смог работать с Maven.

Примечание. Путь к системной переменной должен содержать значение, указывающее на папку bin вашего JDK.

С уважением, Balaji.K

0 голосов
/ 27 ноября 2012

Не вмешиваясь в переменную JAVA_HOME env, вот как я смог это исправить.

Установите 1.6.x jdk.

В Eclipse / Preferences под установленными JRE добавьтевведите для JDK и сделайте его по умолчанию (установите местоположение для папки JDK, например, C: \ Program Files \ Java \ jdk1.6.0_34

Отредактируйте свойства и добавьте JDK_HOME / lib / tools.jar к списку системных библиотек.

Альтернативно, предполагая, что jdk установлен, вы можете добавить JDK / lib / tools.jar в список системных библиотек вашего существующего JRE

по умолчанию.
0 голосов
/ 19 марта 2011

для написания, компиляции и упаковки java-программ требуется JDK, поскольку необходимые инструменты распространяются только с JDK (Java Development Kit). JRE (среда выполнения Java) необходима только для запуска Java-программы.

...