2011-11-23 4 views
4

Большинство команд unix, чьи операции изменяются в зависимости от значений переменных окружения, имеют раздел «ОКРУЖАЮЩИЕ СРЕДЫ» на их странице руководства. Нет такой удачи для двоичного кода Java (Sun/Oracle Java 6), хотя я уверен, что такие вещи, как CLASSPATH и, возможно, JVM_OPTS, имеют эффект.Какие переменные среды влияют на двоичный код java?

Может ли кто-нибудь указать мне на список переменных окружения, которые влияют на двоичный код «java»?

ответ

0

Установка JAVA_HOME в каталог установки и добавление $JAVA_HOME/bin в PATH может быть достаточно, если вам не нужно настраивать системы сборки, такие как maven или ant.

CLASSPATH требуется для большинства сценариев запуска, чтобы содержать расположение поддерживающих библиотек (.jar) или сторонних материалов.

JAVA_OPTS обычно содержит параметры для установки кучи пространства, отладочного агента и тому подобного.

AFAIK java сам по себе не зависит от настроек среды, скорее запускает скрипты, сервисы init и все вокруг.

Таким образом, вы не найдете ни одного списка переменных окружения, связанных с java (программными продуктами).

+0

Является ли 'JAVA_HOME' фактически определенным JRE envvar? В отличие от приложений приложений/приложений, авторы, похоже, единогласно соглашаются в качестве способа выбора местоположения JRE для использования? – millimoose

+0

@Inerdial Я думаю, что это скорее соглашение, чем техническое требование. – stacker

+0

Это не полезно; Я специально спрашиваю о двоичном java. Я прекрасно понимаю, что скрипты-оболочки могут просматривать любые переменные среды, которые они хотят. –

2

Я не думаю, что их много, но это будет зависеть от того, какая реализация (oracle vs ibm).

JDK IBM имеет список здесь: http://publib.boulder.ibm.com/infocenter/javasdk/v5r0/topic/com.ibm.java.doc.diagnostics.50/diag/appendixes/env_var/env_jvm.html

Оракул JDK имеет, по крайней мере, CLASSPATH, JAVA_HOME и JRE_HOME. Хотя на странице man для «java» единственной переменной среды, которую он упоминает, является CLASSPATH.

Другие инструменты, такие как муравей или кот могут выглядеть для JVM_OPTS и JBoss использует JAVA_OPTS.

+0

yep, эта ссылка именно то, что я хочу, за исключением того, что я хочу это для Oracle. –

+1

Я думаю, что единственный, что бинарный «java» заботится об этом ** CLASSPATH ** (на основе man-страницы). Любой список из Oracle, похоже, хочет, чтобы вы использовали параметры командной строки. –

0

Существует также _JAVA_OPTIONS, упомянутый here, который работает для всех вызовов JVM, включая апплеты и Webstart.