はじめまして、質問をさせていただきます。
JDBCを利用して、データベースにアクセスするため、2週間前から
javaを勉強している初心者です。
色々なサンプルを参考にして、javaコードを作成しましたが、
java実行時に『ClassNotFoundException』になってしまいます。
過去の質問から、No.952983やNo.957189を参考にさせていただき、JDBCドライバー
をダウンロードし、CLASSPATHの設定をしてみましたが変わりませんでした。
その後も色々と調べましたが、なぜCLASSPATH設定が有効にならないのか分かりません。
お手数かとは思いますが、御教授のほどよろしくお願いします。
サーバのOS :LINUX(FedoraCore5)
データベース :Postgresql8.1.4(rpmでインストール)
JDKのVer :1.5.0_08
JDBCドライバー:postgresql-8.1-407.jdbc3.jar
↓.bash_profileの設定
export JAVA_HOME=/usr/java/jdk1.5.0_08
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:/$JAVA_HOME/lib/postgresql-8.1-407.jdbc3.jar
↓『set』コマンドで確認したCLASSPATH
CLASSPATH=.:/usr/java/jdk1.5.0_08/lib/tools.jar://usr/java/jdk1.5.0_08/lib/postgresql-8.1-407.jdbc3.jar
以上
No.5ベストアンサー
- 回答日時:
jar xvf jar_filename
で、jarを展開できるので、ファイルの有無は分かるはずです。
ところで、以前の出力ですが
java.lang.ClassNotFoundException: org.postgresql.driver
なんかおかしくないですか?肝心のクラス名は?
パッケージ名しか載っていませんが、importの部分に
import org.postgresql.driver;
なんて書いてません?
ご回答ありがとうございます。
ご指摘のおかげで、解決することができました。
原因はコードで "org.postgresql.Driver"とするべきところが、
"org.postgresql.driver"になっていたことでした。
単純な入力ミスで皆様の手を煩わせてしまいました。
申し訳ありませんでした。
dekopa-様には重ね重ねご回答いただき、本当にありがとうございました。
以上
No.4
- 回答日時:
#2です。
あー、見つけた、と思ったらすでに#3氏が指摘してますね。
>export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:/$JAVA_HOME/lib/postgresql-8.1-407.jdbc3.jar
二つ目、/$JAVA_HOMEとなっているせいで//user/java....となっています。
ご回答ありがとうございます。
お礼が遅くなり、申し訳ありません。
syakko様へのお礼にも書きましたが、ご指摘の部分(/JAVA_HOME)
を修正しても、状態は改善されませんでした。
やはり最初のご指摘とおり、Jarファイル自体がおかしい(CLASS
を含んでいない)からなのでしょうか?
引き続き、ご教授のほどよろしくお願いします。
以上
No.3
- 回答日時:
$JAVA_HOMEの前の/はいらないのでは?
この回答への補足
ご回答ありがとうございます。
お礼が遅くなり、申し訳ありません。
ご指摘の部分(/JAVA_HOME)を修正してみましたが、まだ
ClassNotFoundExceptionのメッセージが出てしまいます。
(setコマンドでも修正されているのを確認しました。)
また、javaコマンドのオプションで直接CLASSPATHを設定
して見ましたが、同様にClassNotFoundExceptionの
メッセージが出ました。
これはJarファイル自体がおかしい(CLASSを含んでいない)
からということなのでしょうか?
↓javaコマンド
java -cp .:/usr/java/jdk1.5.0_08/lib/tools.jar:/usr/java/jdk1.5.0_08/lib/postgresql-8.1-407.jdbc3.jar Dbaccess
ご教授のほど、よろしくお願いします。
以上
No.2
- 回答日時:
つい最近も、classpathの区切りを ; にしないで:にして動かないと云っていた人がいたけど。
。。linuxでは、:でも通るんですか?
windowsでは、: はドライブ名区切りだから、確実に読み間違われますけど。
この回答への補足
ご回答ありがとうございます。
接続元のOSをお知らせしていませんでした。
接続元のOSはLINUX(FedoraCore5)になります。
ご指摘の「:」の件ですが、自分が参考にさせてもらった下記のページによると、
Windouwsの場合 ⇒「;」
Linuxの場合 ⇒「:」
で区切るとのことなので、今回では問題ないと思われます。
↓参考URL
http://www.hellohiro.com/appli.htm
以上
No.1
- 回答日時:
ええと、ClassNotFoundExceptionは、どのクラスですか?
各jarには、そのclassファイルが入っていますか?
postgresのJDBCではなく、その上の、JDBCのinterfaceクラスが無いって事はありませんか?
この回答への補足
早速、ご回答していただきありがとうございます。
初心者なものでご迷惑をおかけします。
ClassNotFoundExceptionのメッセージは下記の通りです。
ご指摘のJARファイルの確認をしたいのですが、メッセージの(****.Java)部分がclass名なのでしょうか?
重ねてご質問することになってしまい申しわけありませんが、ご教授のほどよろしくお願いします。
↓ClassNotFoundExceptionのメッセージ
java.lang.ClassNotFoundException: org.postgresql.driver
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:164)
at Dbaccess.main(Dbaccess.java:13)
以上
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Java マイクラjavaでForgeを入れたいのですが、インストールした.jarファイルが展開されてしまい中 1 2023/07/28 22:30
- Java jdk17.06のインストーラーが起動しない 1 2023/03/27 21:58
- UNIX・Linux ubuntuのサーバー(virtual box)が、再起動するとデータが消えてしまいます。 4 2022/04/27 21:29
- UNIX・Linux cronの@rebootでのdateコマンドの実行につきまして 2 2023/06/11 16:23
- JavaScript JavascriptからSQLへ繋ぎ方が分からない 3 2022/07/07 00:27
- Java mac mini 2009 でのmac OS における Java の入れ替えについて 1 2022/12/27 19:23
- C言語・C++・C# C#の基本文法が詳しく書かれている教科書的な本ありますか 2 2023/02/11 03:48
- Java JavaでWebページ作成 7 2023/07/21 21:09
- その他(ゲーム) マインクラフトJAVA版の導入・ローカルマルチプレイについて 1 2022/03/23 18:59
- Java javaの質問です 次の機能を有するメソッド4つを自クラスに作成し、実装したいです 【機能】 足し算 1 2022/06/15 15:14
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
struts2環境構築で不具合が出て...
-
Javaでのエラーについて
-
javacのコンパイルでファイルが...
-
java と javax の違いは?
-
javaからデータベースに接続 エ...
-
マイクラ1.7.10にcutallなどが...
-
テーブル名が日本語だとクエリ...
-
BufferedInputStreamのreadメソ...
-
propertiesが読み込めなくてnul...
-
CLASSPATHを設定しても、『Clas...
-
vba クリップボードクリアにつ...
-
使用しているJUnitのバージョン...
-
JSPファイルで生じるエラーをど...
-
gitでバージョン指定してダウン...
-
PythonやJavaScriptのように実...
-
授業でプログラミングのJavaの...
-
エクリプスのプログラミングに...
-
C言語でメール送信
-
gridviewでの高さの取得方法
-
Pythonを勉強する道のり
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Javaでのエラーについて
-
java と javax の違いは?
-
propertiesが読み込めなくてnul...
-
javacのコンパイルでファイルが...
-
JAVA実行時エラーについて教え...
-
javaからデータベースに接続 エ...
-
CLASSPATHを設定しても、『Clas...
-
struts2環境構築で不具合が出て...
-
Tomcatでエラー
-
マイクラ1.7.10にcutallなどが...
-
javaのGUIツールキット
-
log4jを使用し、JAVAのバッチプ...
-
マイクラ Ender IO 入れたらク...
-
-Applet表示でのjava.lang.Clas...
-
javaサーブレット upload時
-
JavaMail関係でエラーが出ます
-
JasperExceptionのエラーログの...
-
AntでのJunitの試験
-
マイクラがクラッシュします。
-
jdk-1_5_0_07でのコンパイルエラー
おすすめ情報