Где находится мой путь к классам? - PullRequest
0 голосов
/ 20 марта 2010

Всякий раз, когда я открываю оболочку Bash, мой classpath - это «someProgram».Я знаю, что добавление записи экспорта в «.bashrc» изменяет мой путь к классу, но я хочу знать , где «someProgram» добавляется в путь к классам (это не в «.bashrc»).

Есть ли способ отследить, где это устанавливается, или какие-то типичные места, которые я должен проверять, кроме ".bashrc"?

Подробности:

Я использую Ubuntu 9.10.

Eclipse Версия: 3.5.1 установлена.

echo $SHELL
/bin/bash

java -version
java version "1.6.0_0"
OpenJDK Runtime Environment (IcedTea6 1.6.1) (6b16-1.6.1-3ubuntu1)
OpenJDK Server VM (build 14.0-b16, mixed mode)

javac -version
javac 1.6.0_15

Более подробная информация по запросу.

Проверено:

  • ~ / .bashrc
  • / etc / profile
  • / etc / profile.d / *
  • ~ / .bash_profile (отсутствует))
  • ~ / .bash_login (не присутствует)
  • ~ / .profile
  • / etc / bash.bashrc

Найдено!

/ etc / environment

Ответы [ 4 ]

1 голос
/ 24 марта 2010

Ах да, процесс whackamole для поиска, где и где находится файл запуска. Я предлагаю грубое принуждение, попробуйте:

$ grep CLASSPATH .?*
$ grep -r CLASSPATH --binary-files=without-match /etc/ 2>/dev/null
1 голос
/ 20 марта 2010

Ответ зависит от того, откуда bash читает профиль. Хорошо объясненный ответ: здесь . Выдержка:


Когда bash вызывается как интерактивная оболочка входа в систему или как неинтерактивная оболочка с параметром --login, она сначала читает и выполняет команды из файла / etc / profile, если этот файл существует. После прочтения этого файла он ищет ~ / .bash_profile, ~ / .bash_login и ~ / .profile в указанном порядке, а также читает и выполняет команды из первой, которая существует и доступна для чтения. Опция --noprofile может использоваться, когда оболочка запущена, чтобы запретить это поведение. ... Когда запускается интерактивная оболочка, которая не является оболочкой входа в систему, bash читает и выполняет команды из /etc/bash.bashrc и ~ / .bashrc, если эти файлы существуют. Это может быть запрещено с помощью параметра --norc. Опция --rcfile file заставит bash читать и выполнять команды из файла вместо /etc/bash.bashrc и ~ / .bashrc.


1 голос
/ 20 марта 2010

Перепроверьте все эти файлы, чтобы узнать, не являются ли они источником других файлов, используя встроенную команду ".".

1 голос
/ 20 марта 2010

в файле /etc/profile.

...