2013-04-20 2 views
0

У меня возникла идея, что любое приложение java будет искать переменную CLASSPATH для проверки классов во время выполнения.Eclipse игнорирует переменную CLASSPATH?

Но это, похоже, не так, как приложение, которое я запускаю из Eclipse. В каких конкретных ситуациях используется переменная CLASSPATH? Как я могу убедиться, что Eclipse всегда использует мою переменную CLASSPATH?

ответ

1

Переменная CLASSPATH используется, когда команда java (или javaw) запускается без параметра -classpath или -jar или -cp. Но Eclipse следует лучшим практикам и всегда использует эти параметры.

ИМХО, вы НИКОГДА не должны полагаться на CLASSPATH. Всегда указывайте путь класса явно, в параметрах командной строки. Очень редко нужно, чтобы ВСЕ ваши Java-программы делились одними и теми же библиотеками. Вот почему глобальная переменная CLASSPATH - плохая идея.

+0

Интересно. Я никогда не замечал, что переменная CLASSPATH игнорируется при настройке параметра -cp. Благодарю. ps: Я также поделился вашей опасностью относительно переменной среды CLASSPATH. Мне было просто любопытно. В некоторых случаях он имеет свое место (например, для aspectrt.jar, который будет одинаковым для всех запущенных java-программ в вашей системе, по крайней мере, в большинстве случаев). –

Смежные вопросы