Бруно на верном пути. Я провел обширное исследование, и если вы хотите установить переменные, которые доступны во всех приложениях с графическим интерфейсом, ваш единственный вариант - /etc/launchd.conf
.
Обратите внимание, что environment.plist не работает для приложений, запущенных через Spotlight. Это задокументировано Стивом Секстоном здесь .
Откройте окно терминала
Тип sudo vi /etc/launchd.conf
(примечание: этот файл может еще не существовать)
Поместите содержимое, подобное следующему, в файл
# Set environment variables here so they are available globally to all apps
# (and Terminal), including those launched via Spotlight.
#
# After editing this file run the following command from the terminal to update
# environment variables globally without needing to reboot.
# NOTE: You will still need to restart the relevant application (including
# Terminal) to pick up the changes!
# grep -E "^setenv" /etc/launchd.conf | xargs -t -L 1 launchctl
#
# See http://www.digitaledgesw.com/node/31
# and http://stackoverflow.com/questions/135688/setting-environment-variables-in-os-x/
#
# Note that you must hardcode the paths below, don't use environment variables.
# You also need to surround multiple values in quotes, see MAVEN_OPTS example below.
#
setenv JAVA_VERSION 1.6
setenv JAVA_HOME /System/Library/Frameworks/JavaVM.framework/Versions/1.6/Home
setenv GROOVY_HOME /Applications/Dev/groovy
setenv GRAILS_HOME /Applications/Dev/grails
setenv NEXUS_HOME /Applications/Dev/nexus/nexus-webapp
setenv JRUBY_HOME /Applications/Dev/jruby
setenv ANT_HOME /Applications/Dev/apache-ant
setenv ANT_OPTS -Xmx512M
setenv MAVEN_OPTS "-Xmx1024M -XX:MaxPermSize=512m"
setenv M2_HOME /Applications/Dev/apache-maven
setenv JMETER_HOME /Applications/Dev/jakarta-jmeter
Сохраните изменения в vi и перезагрузите Mac. Или используйте команду grep
/ xargs
, которая показана в комментарии к коду выше.
Докажите, что ваши переменные работают, открыв окно терминала и напечатав export
, и вы должны увидеть свои новые переменные. Они также будут доступны в IntelliJ IDEA и других приложениях с графическим интерфейсом, которые вы запускаете через Spotlight.