-1

Unix サーバーにアカウントを持っています。BASH を使用しているときに、必要な Java のバージョンを指すようにできません。

Unix のバージョンは次のとおりです。

SunOS 5.10 Generic January 2005 

これは私の .profile にあるものです:

#====================================================================
#   set the environment
#====================================================================

ANT_HOME=/apps1/apache-ant-1.8.4
export ANT_HOME

#  $PATH:/user1/acme21 needs to be included to make anything work
PATH=.:/usr/jdk/instances/jdk1.6.0_24:$ANT_HOME/bin:$PATH:/user1/acme21
export PATH

JAVA_HOME=/usr/jdk/instances/jdk1.6.0_24
export JAVA_HOME

CLASSPATH=.:/user1/sterus01/TestProgramsLib/mail.jar:/user1/sterus01/TestProgramsLib/activation.jar:/user1/sterus01/TestProgramsLib/log4j-1.2.16.jar:/user1/sterus01/TestProgramsLib/mail.jar:ojdbc14.jar
export CLASSPATH

env | grep DIS

# Use the bash shell, get many conveniences
bash

echo $JAVA_HOME と echo $PATH を実行すると、

bash-3.00$ echo $JAVA_HOME
/usr/jdk/instances/jdk1.6.0_24
bash-3.00$

bash-3.00$ echo $PATH
.:/usr/jdk/instances/jdk1.6.0_24:/apps1/apache-ant-1.8.4/bin:/usr/bin:/usr/local/bin:/usr/ccs/bin:/usr/bin:/usr/sbin:/etc:/usr/ucb:/usr/local/sudo:/usr/local/sbin:/user1/acme21
bash-3.00$

しかし、「どのjavac」が明らかにします:

bash-3.00$ which javac
/usr/bin/javac
bash-3.00$

そして「どのJava」が明らかにします:

bash-3.00$ which java
/usr/bin/java
bash-3.00$

.profile ファイルで指定した Java バージョンを指すようにするためにできることはありますか?

前もって感謝します Happy Holidays スティーブ

4

2 に答える 2

1

実行可能ファイルが含まれていjavaますか?おそらく彼らはにいます。javac/usr/jdk/instances/jdk1.6.0_24/usr/jdk/instances/jdk1.6.0_24/bin/

于 2012-12-21T15:19:25.033 に答える
0

私はこれを疑う:

PATH=.:/usr/jdk/instances/jdk1.6.0_24

正しくありません。代わりに必要です

PATH=.:/usr/jdk/instances/jdk1.6.0_24/bin

そのJavaインストールのバイナリディレクトリを取得します。

ps現在のディレクトリ(。)を..に入れませんPATH。そうしないと、誰かがディレクトリ内のトロイの木馬のようなプログラム (例: の代用ls) に置き換えることができます。含まれているディレクトリにcdして入力すると、それが見つかります( Unix Power Toolslsの本にこれに関連する面白い話があります)

于 2012-12-21T15:18:51.637 に答える