LinuxでJavaがうまく動かない?

このQ&Aのポイント
  • Linux初心者がSUSE LinuxでJavaを使おうとした際に発生するエラーについて。
  • 64ビットのJDKを32ビットのJDKの上にインストールする必要があるため、再インストールが必要。
  • パスなどの設定を正しく行いたいが、過去のインストールファイルが残っているかどうか分からない。
回答を見る
  • ベストアンサー

linuxでjavaがうまく動きません。

linuxでjavaがうまく動きません。 Linux初心者です。JAVAを勉強しなければならなくなりました。SUSE Linuxです。マシンは自作のようですが、先輩が作ったものなのでよく分かりません。 まず、JDKをインストールしました。すると、パソコンを起動する時に「64ビットのマシンに32ビットのソフトウェアが入っています」というようなメッセージが表示されるようになってしまいました。これはJDKのせいだと思ったので、一度削除して64ビットのJDKと書いてあるソフトをもう一度インストールしました。(しかし、したつもりでしたがこれはできていませんでした) すると、JAVAが動かなくなってしまいました。 よく調べたところ、64ビットのJDKは32ビットのJDKをインストールした上でインストールしなければいけなかったということでした。 そこで、もう一度32ビットのJDK(jdk-6u22-linux-i586.bin)をダウンロードして実行し、64ビットのJDK(jdk-6u22-linux-x64.bin)を実行しました。 それから、「.bash_profile」のファイルに PATH=$PATH:$HOME/bin:usr/local/jdk1.6.0_22/bin JAVA_HOME=/usr/local/jdk1.6.0_22 export JAVA_HOME export PATH と書き込みました。 しかし、「javac」と入力するとコマンドがないと言われます。「java -version」と入力すると「"1.5.0_20"」と表示されます。多分「"1.6.0_22"」とか表示されないといけないのかな、と思ったので、前にインストールしたものが残っているのかと探してみましたが、いろんなサイトを参照しながらインストールしたので見つかりません。(というか、インストールしたものは全部アンインストールしたつもりでした) JAVAが動くようにするにはどうしたらいいのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • DIooggooID
  • ベストアンサー率27% (1730/6405)
回答No.1
参考URL:
http://www.db.is.kyushu-u.ac.jp/rinkou/javaintro/javac.html
mizuho1984
質問者

お礼

ありがとうございます。 URLに記載のように.bash_profileを書き換えたら正しく動きました!

その他の回答 (1)

  • kawais070
  • ベストアンサー率52% (2242/4282)
回答No.2

> PATH=$PATH:$HOME/bin:usr/local/jdk1.6.0_22/bin 上記のところですが、以下のように変えたら うまく動くと思います。 PATH=/usr/local/jdk1.6.0_22/bin:$PATH:$HOME/bin 既存のPATH変数に古いjavacコマンドのディレクトリが 含まれているので、それより後ろに新しいディレクトリを 記述しても、前の方が優先されているのかなと思いました。 なので、新しいものは前に記述することで、そちらが 優先されるハズです。

mizuho1984
質問者

お礼

回答ありがとうございます。 記載してくださったように.bash_profileを書き換えてみたのですが、正しく動きませんでした。 お手数おかけしました。

関連するQ&A

  • JAVAの環境変数が初期化されてしまいます

    Linux初心者です。 JDK6.0をインストールして、環境変数を次のように設定しました。 export JAVA_HOME=/usr/local/jdk1.6.0 export PATH=$JAVA_HOME/bin:$PATH これで一旦はjavacやjavaコマンドが使えるようになるのですが、 bashを再起動すると、また使えなくなるので再設定しなければなりません。 調べてみた所、homeディレクトリの.bash_profileを変更すると 再設定の必要がなくなると書いていたので、 # set PATH so it includes user's private bin if it exists if [ -d ~/bin ] ; then PATH=~/bin:"${PATH}" → export JAVA_HOME=/usr/local/jdk1.6.0 → export PATH=$JAVA_HOME/bin:$PATH fi と記述してみたのですが、やはりbash再起動後のPATHに 上記のパスは含まれていません。 私の記述方法が間違っているのでしょうが、 どうすれば自動的にパスを通すように設定できるのでしょうか? ターミナルはubuntu6.10からGNOME端末を使用しています。 よろしくお願いします。

  • JAVAのJDK6/7の切り替え

    64ビットのWindows8のマシンにjdk-6u21-windows-x64.exeとjdk-7u45-windows-x64.exeの2つ をインストールした状態で、環境変数で、 JAVA_HOME6 : C:\Program Files\Java\jdk1.6.0_21 JAVA_HOME7 : C:\Program Files\Java\jdk1.7.0_45 JAVA_HOME : %JAVA_HOME6% PATH : %JAVA_HOME%\bin; のようにして6と7を切り替えられるようにして使いたいのですが、現在上記の設定で、 >path を実行すると6のパスを指しているのですが、 >java -version を実行すると常に7を表示します。 この状態で、コマンドプロンプトからコマンドを実行したり、Eclipseを立ち上げた場合、実際 どちらのものが使われることになるのでしょうか? また、ひとつのマシンで上記のようにJavaを切り替えて使うことは可能なのでしょうか?

    • ベストアンサー
    • Java
  • RedHatLinux7.1でjavaのインストール

    RedHatLinux7.1でjavaのインストールがうまくいきません。 <javaインストール> 1)Java 2SDK,StandardEdition 上記は書籍のcd_romに添付分を使用。 2)Java2SDK,EnterprizeEdition バージョン1.2.1 サイトからDounload分を使用 3)J2EESDK 日本語版追補バージョン1.2.1 サイトからDounload分を使用 4)CD-ROMをマウント   mount /dev/cdrom /mnt/cdrom 5)インストール手順 cd /usr/local /mnt/cdrom/linux/java/j2sdk-1_3_0_02-linux.bin tar zxvf /home/jin/j2sdkee-1_2_1-linux.tar.gz tar zxvf /home/jin/j2sdkee-1_2_1-linux-ja.tar.gz 6)環境変数の設定 開発に使用するUSER(jin)でログインしなおし、ホームディレクトリの.bashrcの最下行に追加 export PATH=$PATH:/usr/local/jdk1.3.0_02/bin export JAVA_HOME=/usr/local/jdk1.3.0_02 export CLASSPATH=$CLASSPATH:/usr/local/j2sdkee1.2.1/lib/j2ee.jar export CLASSPATH=$CLASSPATH:/usr/local/jdk1.3.0_02/lib/tools.jar 7)javaのバージョン確認した所下記エラーが出ます。 java -version [jin@tsl jin]$ /usr/local/jdk1.3.0_02/bin/java: /usr/bin/cut: そのようなファイルやディレクトリはありません /usr/local/jdk1.3.0_02/bin/i386/native_threads/java: error while loading shared libraries: libjvm.so: cannot load shared object file: No such file or directory 8)それで、ln -s /bin/cut /usr/bin/cut でcutのリンクをはったところ java -versionが帰ってこなくなりました。 java -?はすぐ結果がでます。 何が悪いのでしょうか??ヒントをお教えください。 p.s. CGIの件はScriptAliasでユーザーフォルダ以外を指定してやれば上手く動きました。 そのときAddHandler cgi-script .cgiはあくまでもコメントアウトしております。(笑) その節はご回答有難う御座いました。

  • Tomcatの起動に使用するJavaについて

    Tomcatをはじめてインストールする者で恐縮です。 Redhat Linux ES2.1上でTomcat4.1.30とApache1.3.27を連携させようとしています。 Tomcatを起動するには、JDKが必要のようですが、Linuxに標準で入っていたJREでは駄目なのでしょうか。 javaコマンドが普通に使えるのですが。。 試しに /root/.bash_profileに export JAVA_HOME=/opt/IBMjava2-131 export PATH=$PATH:$JAVA_HOME/bin なんて足してみたところstartup.shを実行すると Using CATALINA_BASE /usr/local/jakarta-tomcat-4.1.30 Using CATALINA_HOME /usr/local/jakarta-tomcat-4.1.30 Using CATALINA_TMPDIR /usr/local/jakarta-tomcat-4.1.30/tmp Using JAVA_HOME /opt/IBMjava2-131 と出ました。http://localhost:8080を見たところTOMCATのホームページが見れませんでしたのでやはり駄目でしょうか。JDKをインストールすべき? ご存知の方宜しくお願いします。

  • LinuxにJAVAをインストしたのですが。

    Turbolinux6.5Serverにrootユーザーでrpm -Uvh jdk-1.3.1_01.i386.rpmを実行してJAVAをインストール後、確認のためexport PATH=/usr/jdk1.3.1/binを打ってパスが通ったことを確認し、でvi ~/.bash_profileでファイルを開きPATH="$PATH:/usr/java/jdk1.3.1/binを一行追加し、再起動後javac▲Hello.javaをコンパイルしようとしたのですが、bash: javac: command not found と出て実行できません。どうしたらよいのでしょうか。設定が足りないのでしょか? どなたか教えてください!

  • Fedora Core5にJavaを入れましたがコンパイル出来ません。

    Lnux初心者です。Fedora Core5にJavaを入れましたがコンパイル出来ません。 Javaのバージョンはj2sdk1.4.2_12とjdk1.5.0_08です。インストール確認も出来Pathには/home/****の.bash_profileにJAVA_HOME=/usr/java/j2sdk1.4.0_12 PATH=$PATH:$JAVA_HOME/bin CLASSPATH=.:$JAVA_HOME/lib/tools.jar export JAVA_HOME PATH CLASSPATH を追加しましたがコンパイル時にbash: javac: command not found と言うエラー表示がでます。どうにかLinuxでJavaをと考えているのですが、先に進めず困っています。Pathの通しかたがダメなのかどうかも判りません。どうかよろしくお願いします。

  • Java 2 SDK, Standard Edition のインストール

    こんばんは。 Java 2 SDK, Standard Edition のインストールで困っています。 OSはredhat7jです。 Xwindowは入っていません。 sunのところから、「j2sdk-1_3_0_02-linux.bin」をダウンロードしてきて、 redhatにrootで入り、/usr/localに「j2sdk-1_3_0_02-linux.bin」をコピーしました。 そして、「./j2sdk-1_3_0_02-linux.bin」と入力して実行しました。 メッセージが表示されて、最後に「yes」と入力して、インストールは 成功したのですが、インストールが成功したか確認のために、 「/usr/local/jdk1.3.0_02/bin/java -version」と入力し実行したらエラーが表示されてしまいます。 インストール先は「/usr/local/jdk1.3.0_02/」です。 パスも「PATH=$PATH:/usr/local/jdk1.3.0_02/bin」と通してあります。 エラーの内容は、 /usr/local/jdk1.3.0_02/bin/i386/native_threads/java: error while loading shared libraries: libstdc++-libc6.1-1.so.2: cannot open shared object file: No such file or directory と表示されています。 どうかよろしくお願いします。

  • linuxにJAVAがインストールできません

    linux初心者です。 以下のサイトを参考にjavaインストールをしようと思ったのですが、 ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ http://codezine.jp/article/detail/1744?p=1 wget java_ee_sdk-5_07-jdk-6u16-linux.bin http://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_Developer-Site/en_US/-/USD/VerifyItem-Start/java_ee_sdk-5_07-jdk-6u16-linux.bin?BundledLineItemUUID=KohIBe.lxhkAAAEkb2kyc6AQ&OrderID=nwtIBe.lxjAAAAEkYWkyc6AQ&ProductID=AcVIBe.nU6oAAAEjhhpuoDTb&FileName=/java_ee_sdk-5_07-jdk-6u16-linux.bin を実行すると、 `java_ee_sdk-5_07-jdk-6u16-linux.bin?AuthParam=1256816067_a8efbfd2d292c375013d9a70eebcb5b4&TicketId=B%2Fw6lx2IT1NLQBVCPVJSkg%2Fl&GroupName=CDS&FilePath=%2FESD6%2FJSCDL%2Fjava_ee_sdk%2F5u7-6u16-ml%2Fjava_ee_sdk-5_07-jdk-6u16-linux.bin&File=java_ee_sdk-5_07-jdk-6u16-linux.bin' (ファイル名が長すぎます)へ書き込めません。 と表示されます。 最新版のインストールをしたいのでyum以外でインストールしたいのですが、他に方法はありますでしょうか。

  • 環境変数JAVA_HOMEとPATHの違い

    JAVAをはじめて間もない初心者です。 ふと疑問に思ったことがあるので、質問させていただきます。 先日、自宅サーバ(CentOS4.6)にjava(j2sdk1.4.2_16)をインストールしたのですが、OSに元々javaがインストールされていました。 SHELL># whereis java と打つと[java: /usr/bin/java]と出てきて、実際/usr/bin以下にjavaの実行ファイルがあります。 自分でインストールしたjavaは /usr/loacl/j2sdk1.4.2_16というディレクトリを作成してその下に展開しています。 システムの環境変数に自分でインストールしたjavaを指定しようと SHELL># export JAVA_HOME=/usr/local/j2sdk1.4.2_16 SHELL># export PATH=${JAVA_HOME}/bin:${PATH} と設定したのですが、 $PATHには/usr/binも設定されています。 javaを実行した場合は、どちらのjava実行ファイルが参照されるのでしょうか? (OSに元からインストールされているjava[/usr/bin/java]なのか、自分でインストールしたjava[/usr/local/j2sdk1.4.2_16/bin/java]なのか) そもそも、JAVA_HOMEは何のために設定するのでしょう?googleなどで「JAVA_HOMEとは」などと調べたのですが、イマイチ僕の欲しい答えが出てきません。 javaへのPATHさえ設定していれば、問題ないような気がするのですが、、。 とても稚拙な質問だと思いますが、良ければアドバイスよろしくお願いします。

    • ベストアンサー
    • Java
  • リナックスにjavaをインストールしたいのですがうまく行きませんでした。

    現在ターボリナックスにjavaをインストールする事を心見ています。 無事javaをインストールする事ができたみたいなのですが、動作確認の為に下記の作業を行いました。 $ /usr/java/jzsdk1.4.01/bin/java - version が、「javaマシーンがおかしい」というようなイメージのコマンドが帰ってきてしまいうまく動作を確認する事ができませんでした。 どうかよきアドバイスを教えて頂けないでしょうか? お願します。

専門家に質問してみよう