При запуске ant через eclipse он не находит переменные окружения, но при запуске ant через терминал все в порядке - PullRequest
6 голосов
/ 11 февраля 2011

Когда я запускаю ant через Eclipse, некоторые цели создаются нормально, но те, которые нуждаются в определенной переменной среды, т.е. SOME_SDK, которую я установил в моем файле .profile, не будут работать. Даже если я попытаюсь отобразить $ {env.JAVA_HOME}, Ant через eclipse просто распечатает эту строку. Но если я запускаю ant через терминал (то есть ant sometarget), он найдет JAVA_HOME и SOME_SDK и выведет на экран эти пути. Я проверил затмение, что оно указывает на того же муравья, который находится в моем пути к окружению (/usr/share/java/ant-1.8.1). Есть идеи?

Спасибо

Ответы [ 5 ]

19 голосов
/ 11 февраля 2011

Когда вы открываете терминал, переменные окружения в вашем .profile загружаются.Когда вы запускаете Eclipse через оконную систему, он не запускается под вашей учетной записью, поэтому ваш .profile не доступен для Eclipse во время выполнения.То же самое на Mac.Я поместил переменные среды, которые Eclipse должен видеть в файле / etc / profile, который загружается при запуске системы.

11 голосов
/ 11 февраля 2011

Вы можете указать переменные в конфигурации запуска Ant ( Запуск от имени > Сборка Ant ... > Среда * вкладка 1006 *).

1 голос
/ 08 декабря 2012

Я думаю, что обработка среды Eclipse IDE немного испорчена, по крайней мере, в * nix средах.Хотя это похоже на случай Кевина, я обнаружил, что, хотя я создаю отдельный профиль запуска и - успешно - запускаю цели тестирования / установки (здесь maven вместо ant, но это незначительный шум) и задаю переменную среды JAVA_HOMEдля этого профиля запуска проект не проверяет файл POM.

У меня осталось только два варианта:

  1. использовать подход / etc / profile или
  2. Редактировать файл eclipse.ini, включая системное свойствотам.

Я думаю, что последний - более чистый обходной путь, поскольку в конце концов он влияет на файл конфигурации, предназначенный только для проблемного приложения.Тем не менее, Eclipse должен использовать переменные, найденные в пути пользователя, и дать нам возможность создавать:)

0 голосов
/ 12 июля 2018

Добавьте эту строку в ~/.bashrc (или вы можете использовать другой файл профиля):

alias start-eclipse='open /Applications/eclipse/Eclipse.app'

(Не забудьте запустить source ~/.bashrc)

Если вы запустите запуск-eclipse из командной строки, все переменные окружения будут выбраны.Таким образом, вам нужно поддерживать только один набор переменных среды как в командной строке, так и в средах затмений.

ПРИМЕЧАНИЕ. Украдено из ответа Криса Фегли в Запустить Mac Eclipse с установленными переменными среды

0 голосов
/ 22 марта 2012

Что вам нужно сделать, это удалить java.exe из c: \ Windows \ System32.

Причина в том, что в вашей переменной среды% PATH% он содержит c: \ Windows \ System32, которыйимеет файл java.exe.Если вы запустите c:> java -version из командной строки, вы увидите, что используемая версия не соответствует версии jdk.

После того, как вы это сделаете, вам нужно будет добавить:% JAVA_HOME% / bin в переменную среды% PATH%, чтобы вы могли запускать java.exe из jdk при запуске приложений.Обязательно перезапустите любое приложение (включая командную строку), прежде чем ожидать, что оно получит изменение.

...