お知らせ

  • 利用規約を守って投稿してください。また、よくある質問および投稿の手引きも参照してください。
  • メッセージの投稿にはアカウントが必要です。未登録の方は、ユーザ登録ページからアカウントを作成することができます。

#1 2009-10-07 16:04:48

ysntu-Valentine
Music Lover
From: Sapporo
登録日: 2009-02-14

JAVA_HOMEを定義したいがJDK1.6 のインストール先不明

みなさんこんにちわ。おねがいします。

synapticを使って Sun JDK1.6 をインストールしたので、
JAVA_HOMEを定義したいのですが、
JDKの一式がどこにインストールされたかわかりません・・・・
初歩的でもうしわけないですが、おしえてください。

コンソールより、versionコマンドを打ってjdkがインストールがされていることは確認済みなのです。
----
#java -version
java version "1.6.0_2"
----

locate java とコマンドを打つと、複数のdirにそれらしいものが
散らかって見つかるのですが、ひとつのディレクトリにjdkはまとめられているわけでは
ないのでしょうか?

windows環境で JDKをインストした場合は、C:\Program Files\Java\jdk1.6.0_1 みたく、
dirが存在して、ここを JAVA_HOME として定義してます。
ubuntuの環境でも、このイメージで捉えています。
そもそも考え違いでしたらご指摘下さい。

synaptic でインストールせずに手動でやるべきなのでしょうか。


--やりたいこと--

以下のように、シェルから JAVA_HOME を参照したい。

JAVA_HOME=/usr/local/jdk

PATH=/bin:/usr/bin:/sbin:/usr/sbin:$JAVA_HOME/bin
CLASSPATH=$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar

export JAVA_HOME PATH CLASSPATH

オフライン

 

#2 2009-10-07 17:49:57

ysntu-Valentine
Music Lover
From: Sapporo
登録日: 2009-02-14

Re: JAVA_HOMEを定義したいがJDK1.6 のインストール先不明

利用環境が抜けてましたので補足です。

PC:HP ML115
Ver: 8.10
Linux version 2.6.27-9-generic (buildd@rothera) (gcc version 4.3.2 (Ubuntu 4.3.2-1ubuntu11) )
#1 SMP Thu Nov 20 21:57:00 UTC 2008 (Ubuntu 2.6.27-9.19-generic)

オフライン

 

#3 2009-10-07 19:55:54

epii
メンバ
登録日: 2008-12-11

Re: JAVA_HOMEを定義したいがJDK1.6 のインストール先不明

/usr/lib/jvm/java-6-sun
または
/usr/lib/jvm/java-6-sun-1.6.0.16(この数字は環境による)
とかですね。
Synaptic で、
パッケージ名を右クリック -> プロパティ -> インストール済みファイル
または、
$ dpkg -L <パッケージ名>
でインストールされたファイルが見れるので、覚えておくといいかもしれません。

オフライン

 

#4 2009-10-07 20:25:36

STGSAGWAN
ゲスト

Re: JAVA_HOMEを定義したいがJDK1.6 のインストール先不明

#1のysntu-Valentineさんへ

標題の件については、「環境変数 JAVA_HOME PATH export Ubuntu 9.04」とかのキーワードで十分調べられる範囲にあると思います。
他の人はどうやてJAVA_HOMEを設定しているのだろう?という視点で見れば、質問せずに自力で分かってしまいます。

さて、気になる点として、
PATH=/bin:/usr/bin:/sbin:/usr/sbin:$JAVA_HOME/bin
は、/usr/bin配下のjavaが先にヒットするので期待通りに動作しないです。最低でも/usr/binより前でないと。
# というか、/usr/bin:/sbin:/usr/sbin配下のコマンドをJavaのプロセスから使うケースはあまりないと思いますが。

ネット上のブログなどでは、
PATH=$PATH:$JAVA_HOME/bin; export PATH
という書き方をしているケースが山ほどありますが, $PATHの候補が先にヒットしてしまうシステム環境では、間違った方法と言えるでしょう。
(たまたま動いているので間違いに気づきにくい)

> synaptic でインストールせずに手動でやるべきなのでしょうか。
基本的にアプリは、Synaptic経由のインストールが第一候補ですが、個々のニーズにより他所からDLし手動で入れてもよいでしょう。
もちろん一長一短はあります。

>locate java とコマンドを打つと、複数のdirにそれらしいものが散らかって見つかるのですが、
locate使うなら、
$ locate --regex java$
の方が適切ですよね。

あと、「散らかっている」という表現から、/usr/bin配下のjavaとかの正体を理解されていない印象を持ちました。
もし余力があれば、
・シンボリックリンク (lnコマンド、readlinkコマンドなども)
・「update-alternativesシステム」と /usr/sbin/update-alternativesコマンド
・/usr/sbin/update-java-alternatives
について勉強すると良いと思います。

それらを総合的に理解した上で、Synapticで入れたJavaがどこにあるかは
$ update-java-alternatives -l
とかの方法でも分かったりします。

 

Board footer

Powered by FluxBB