【講座名】
Java初心者入門講座 に関する質問
【質問】
EclipseでSampleDb400プロジェクトのJarファイルを作成し、実行しても都道府県のデータが表示されません。
フレームワーク・パネル・ボタン等は問題なく表示します。エラー表示はまったくありません。
Jarファイルの保存場所は、SampleDb400以外です。
Jdk、Jre、Path、ODBC等も講座のとおり設定しました。Mysqlもコマンドラインからすべて実行表示されますので、問題ないと思います。
またJarファイルを実行する前には、管理ツール中からMYSQLのサービス開始を設定し、起動させてあります。
Eclipseの中から実行すると、問題なくMysqlの都道府県データは表示されます。
しかしEclipseからMYSQL(sampledb040)を読み込み作成したJarファイルから実行すると、データ(都道府県)のみが表示されません。
恐縮ですが、御教示のほどをよろしくお願い致します。
【回答】
Eclipseからは問題なく実行できているとのことなので、プログラム的には、問題ありません。
また当講座と同じ手順で、MySQLを設定していれば、データベース名、テーブル名、ユーザー名、パスワードなども大丈夫だと思います。
でも当講座で紹介したJARファイルの作成方法は、データベースにAccessを使った例です。
MySQL版のJARファイルは、講座では作成していません。
実は、データベースにMySQLを使う場合は、少し手順が異なります。
MySQLだと正常に表示できないのは、あなたが作成したJARファイルにJDBCドライバーの「mysql-connector-java-5.1.5-bin.jar」が含まれていないからです。
*バージョンによってファイル名は変わります。
ここで重要なポイントですが、「JARファイルにJARファイルを含める」のは、手順がちょっと面倒です。
以下のサイトが参考になります。
http://www.fk.urban.ne.jp/home/kishida/kouza/old/javajar.htmlその後、読者様から、以下のメールが届き、無事に解決できたようです。
---
ご指導のとおり、JDBCドライバー「mysql-connector-java-5.1.8-bin.jar」の保存を次の場所に変えてみました。(JREは公開の方です)
c:\jre\lib\ext\mysql-connector-java-5.1.8-bin.jar
(今までは c:\eclipse\workspace\ に保存していた)
実行の結果、正常に表示し、完成いたしました。
---
*「\」はWindowsでは円記号のことです。
【補足】
(1)jreの場所について
パソコン内に「jre」が複数インストールされている場合があるので、ご注意ください。
*フォルダ名で検索してみると、すぐに分かります。
「\lib\ext」は、自動的に参照されるので、もしこのフォルダにJDBCドライバーを配置する場合は、パスは関係ありません。
しかし通常のフォルダに配置する場合は、パスが関係します。
「\lib\ext」の場所がパソコンによって異なる可能性があるので、あなたが作ったJavaのソフトウェアを、JARファイルで他の人に配布する場合は、注意が必要です。
自分自身だけで使うなら、「\lib\ext」で問題ありませんが。
(2)それでも動かない場合
違う場所の「\lib\ext」に配置している可能性があります。フォルダ名で検索してみて、複数ある場合は、それぞれにJDBCドライバーを配置してみてください。
また「Windowsのファイアウォール」や「ウィルスセキュリティソフト」などで、MySQLやJARファイルのプログラムがブロックされていないか、ご確認ください。