Exception in thread "main" java.lang.NoClassDefFoundError: helloworldと出てJAVAが実行できません。どうしたらよいのでしょうか。以前もこういう質問をしたのですが、またなってしまいました。

CLASSPATHの設定とかもしてみようといろいろと試行錯誤したのですが、だめでした。どういう設定にすればよいかもわかりません。

どうにかして、 java HelloWorld で実行できるようになりませんか?
JAVAのSDKをインストールした場所は C:\j2sdk1.4.0 です。コンパイルはできます。
OSはWindowsXPです。初心者ですが、どうかよろしくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (4件)

java -classpath . HelloWorld



と入力しても駄目ですか?

参考URLにはJavaのFAQがたくさん詰まっています。
一度目を通しておいた方がいいですよ。

参考URL:http://www.gimlay.org/~javafaq/S002.html#S002-08
    • good
    • 0

トラブルが起きた時は、空白や日本語を含まないフォルダの下で実行した方がややこしくならずにすむのですが、こちらの環境(Windows 2000, Java2 SDK 1.3.0_02)ではデスクトップに置いても動作したので、関係なさそうですね。



同じフォルダの中で、
C:\Documents and Settings\VAIO\デスクトップ>javap HelloWorld
を実行するとどうなりますか?
    • good
    • 0

エラーメッセージの意味は、「helloworld」というクラスが見つからないよ、という意味です。


atonさんがおっしゃられているように、Javaでは「HelloWorld」と「helloworld」は区別されてまったく別物とされるので、質問を書くときの写し間違いでなければ、まずクラス名が「HelloWorld」となっていることを確認して下さい。

それで解決できなければ、または別のエラーメッセージが出てくるようになったら、コマンドプロンプトでどのように入力したかを、current directoryがどこであるかも含めて、補足して下さい。

(例)
C:\>d:
D:\>cd test
D:\test>javac HelloWorld.java
D:\test>java HelloWorld
*** 表示されたエラーメッセージ ***

この回答への補足

下のようになってしまいます。どこでどうやっても実行できません。
SDKを再インストールしたのですが、だめでした。どうしてもできません。

---------------------------------------------------------------------
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\Documents and Settings\VAIO>cd デスクトップ

C:\Documents and Settings\VAIO\デスクトップ>javac HelloWorld.java

C:\Documents and Settings\VAIO\デスクトップ>java HelloWorld
Exception in thread "main" java.lang.NoClassDefFoundError: HelloWorld

C:\Documents and Settings\VAIO\デスクトップ>
---------------------------------------------------------------------

ソースファイルは↓
---------------------------------------------------------------------
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
---------------------------------------------------------------------
よろしくお願いします。

補足日時:2002/03/27 18:38
    • good
    • 0

Javaでは大文字と小文字を区別します。


それを念頭において,もう一度プログラムや実行処理を見直してください。
なお,CLASSPATHの設定はしないほうがいいのではないかと思います。

この回答への補足

大文字小文字を区別してもおなじなのです・・・。

補足日時:2002/03/27 18:37
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qmarty3のvariableFilter

Smarty3.0.9を使用しております。
ZendFrameworkと連携した時にエスケープ処理をさせるために、
$this->_smarty->default_modifiers = array('escape:"htmlall"');
を指定した場合に

Fatal error: Uncaught exception 'SmartyCompilerException' with message 'Syntax Error in template  ~  unknown modifier "escape"'

のようなエラーが出たので何でかなと思っていたら、Smarty3ではdefault_modifiersが廃止とかいう情報がネット上で出てきました。
しかし、Smarty3の英語版のマニュアルを見ても、default_modifiersは普通に載っていますし、
どうも代わりに使うようであるvariableFilterというものがそもそもManualで見当たりませんでした。
Web上でvariableFilterを調べてみるのですがあまり出てこないように思います。
自分にはサッパリ分かりませんでした。

すみませんが、$this->_smarty->default_modifiers = array('escape:"htmlall"');に替わる書式を教えていただけませんでしょうか?

Smarty3.0.9を使用しております。
ZendFrameworkと連携した時にエスケープ処理をさせるために、
$this->_smarty->default_modifiers = array('escape:"htmlall"');
を指定した場合に

Fatal error: Uncaught exception 'SmartyCompilerException' with message 'Syntax Error in template  ~  unknown modifier "escape"'

のようなエラーが出たので何でかなと思っていたら、Smarty3ではdefault_modifiersが廃止とかいう情報がネット上で出てきました。
しかし、Smarty3の英語版のマニュアルを見ても、default_...続きを読む

Aベストアンサー

Ver3でも普通に使えますよ。
こちらの環境にてV.3.0.9を入れて動作確認してみましたが問題ありませんでした。

気になった点が1つあり、正常にSmartyがプラグインを読み込んでますか?(modifier.escape.php)

【variableFilter】についてですが、多分プラグインのことでしょう。

$smarty->loadFilter("variable", "htmlspecialchars");

variablefilter.htmlspecialchars.php

一度単体で組んでみては如何でしょうか。
ちなみに、Smartyの最新版は【Ver3.1.6】です。

Q「Exception in thread "main" java.lang.NoClassDefFoundError: CUSTOMER」エラー

Oracle9i R2にJDBCで接続してCUSTOMER表のレコード件数を調べる単純なJavaプログラムをつくろうとしています。

以下のソースをOracle端末上で実行すると「Exception in thread "main" java.lang.NoClassDefFoundError: CUSTOMER」というエラーメッセージが表示されます。

環境設定としてCLASSPATHにclasses12.zipのパスを通しました。

-------------------------------------------------
// JDBC APIのインポート
import java.sql.*;class CUSTOMER {
public static void main (String args[])
throws SQLException, ClassNotFoundException {

// JDBC Driverの登録
Class.forName("oracle.jdbc.driver.OracleDriver");

// Oracle9iに接続
Connection conn =
DriverManager.getConnection ("jdbc:oracle:thin@192.168.0.10:1521:testdb", "test", "test");

// ステートメントを作成
Statement stmt = conn.createStatement();

// 問い合わせの実行
ResultSet rset = stmt.executeQuery("SELECT COUNT(*) FROM CUSTOMER");

// 問い合わせ結果の表示
while ( rset.next() ) {
// 列番号による指定
System.out.println(rset.getInt(1) + "\t" + rset.getString(2));
}

// 結果セットをクローズ
rset.close();

// ステートメントをクローズ
stmt.close();

// 接続をクローズ
conn.close();
}
}
-------------------------------------------------
何かおわかりの方いらっしゃいましたら教えて下さい。宜しくお願いします。

Oracle9i R2にJDBCで接続してCUSTOMER表のレコード件数を調べる単純なJavaプログラムをつくろうとしています。

以下のソースをOracle端末上で実行すると「Exception in thread "main" java.lang.NoClassDefFoundError: CUSTOMER」というエラーメッセージが表示されます。

環境設定としてCLASSPATHにclasses12.zipのパスを通しました。

-------------------------------------------------
// JDBC APIのインポート
import java.sql.*;class CUSTOMER {
public static void main (String args[])
...続きを読む

Aベストアンサー

thin@ではなくthin:@です。

QMe.FilterOn = True は先でも後で

Me.FilterOn = True は先でも後でも問題ないですか?

アクセスのvbaでフォームにフィルタをかけるときに
今まで
---------------------------------------
Private Sub コマンド2_Click()
Me.Filter = "フィールド = '" & "test" & "'"
Me.FilterOn = True
End Sub
---------------------------------------
とコードを書いていましたが
---------------------------------------
Private Sub コマンド2_Click()
Me.FilterOn = True
Me.Filter = "フィールド = '" & "test" & "'"
End Sub
---------------------------------------
でも機能しました。

という事は、
Me.FilterOn = Trueは
Me.Filter の前でも問題ないのでしょうか?

Me.FilterOn = Trueは
Me.Filter の後と習ったので疑問に思っています。
よろしくお願いいたします。

Me.FilterOn = True は先でも後でも問題ないですか?

アクセスのvbaでフォームにフィルタをかけるときに
今まで
---------------------------------------
Private Sub コマンド2_Click()
Me.Filter = "フィールド = '" & "test" & "'"
Me.FilterOn = True
End Sub
---------------------------------------
とコードを書いていましたが
---------------------------------------
Private Sub コマンド2_Click()
Me.FilterOn = True
Me.Filter = "フィールド = '" & "test" & "'"
End Sub
----------...続きを読む

Aベストアンサー

興味もあって2007でやってみました。


私の今までの書き方)

  If (Len(sWhereCondition) = 0) Then
    Me.FilterOn = False
    Me.Filter = ""
  Else
    Me.Filter = sWhereCondition
    Me.FilterOn = True
  End If

ここで、

Me.FilterOn = False 状態の時、Me.Filter を変更しても何も起きません

Me.FilterOn = True 状態の時、
・ Me.Filter を変更すると、再クエリが発生しました
・ Me.FilterOn = True を再設定しても再クエリされませんでした

Me.FilterOn = False 状態の時、
    Me.Filter = sWhereCondition
    Me.FilterOn = True ' ★

    Me.FilterOn = True ' ★ ' ☆
    Me.Filter = sWhereCondition ' ★

の記述にすると ★ で再クエリが発生しました。
ただ、☆ 時に Me.Filter = "" なら True にはなりませんでいた。
True にならない可能性があるので、

    Me.Filter = sWhereCondition
    Me.FilterOn = True

が正しい順と思われます。

Me.FilterOn = True 状態の時、
    Me.Filter = "" か Me.FilterOn = False でフィルタ解除されました。
Me.FilterOn = False 時に Me.FilterOn = False しても変化はありませんでした。
ただ、Me.Filter = "" とすると自動で Me.FilterOn = False に変化。
また、Me.Filter = "" 時に Me.FilterOn = True にはできませんでした。

これらの動きをまとめてみると、

    Me.Filter = sWhereCondition ' ★1
    Me.FilterOn = True ' ★2

だけで良さそうです。
(sWhereCondition = "" なら FilterOn は自動で False になって True にできない)
Me.FilterOn = True 状態の実行では、★1で再クエリ
Me.FilterOn = False 状態の実行では、★2で再クエリ
てな動きになるのでしょうか・・・


なので、ご質問への回答としては、

Me.FilterOn = True
Me.Filter = "フィールド = '" & "test" & "'"

と記述すると、
実施前 Me.Filter = "" であれば、フィルタはかからない。
実施前 Me.Filter = "" でなければ、最悪2回再クエリすることになる。
(実施前 Me.FilterOn = False だったら2回)
(実施前 Me.FilterOn = True だったら1回)
という事になるのでしょうか。


※ 私の環境でのものなので、検証はしてください。

興味もあって2007でやってみました。


私の今までの書き方)

  If (Len(sWhereCondition) = 0) Then
    Me.FilterOn = False
    Me.Filter = ""
  Else
    Me.Filter = sWhereCondition
    Me.FilterOn = True
  End If

ここで、

Me.FilterOn = False 状態の時、Me.Filter を変更しても何も起きません

Me.FilterOn = True 状態の時、
・ Me.Filter を変更すると、再クエリが発生しました
・ Me.FilterOn = True を再設定しても再クエリされませんでした

Me.FilterOn = Fal...続きを読む

Q Exception in thread "main" java.la

 Exception in thread "main" java.lang.StackOverflowError
というエラーが出ます

 moji()にtestという変数をいれてやり、mainから、書かそうとしていますが、
 Exception in thread "main" java.lang.StackOverflowError
というエラーが出ますが、何故かわかりません。
 宜しくお願いします。

************************************************************
public class ArgsTest2
{
public static void main(String args[])
{
moji();
}

public static void moji()
{
String[] test = {"abcde","fghij"};
main(test);
}
}

Aベストアンサー

ユーザ定義関数(moji)がmain関数を呼ぶことができるのか
分かりませんが、できたとしてもこのコードでは、

main()→moji()→main()→moji()・・・

の無限ループになりますね。

文字を出力するコードもありませんし、
もう一度落ち着いて考え直してみてください。

QAdvancedFilterの状態把握

ExcelのVBAで、AdvancedFilterを使って、データを
抽出するプログラムを作っています。

今のシートの状態が、AdvancedFilter実行後かどうか
をVBAで取得したいのですが、可能でしょうか?

ちなみに、AutoFilterは、「ActiveSheet.AutoFilterMode」
で取得できるようですが、AdvancedFilterの状態は
取得することができませんでした。

よろしくお願いします。

Aベストアンサー

VBAのAdvancedFilterの使い方は、データを抽出しコピーする機能なので、AutoFilterとは、使い方が違います。もし、そのデータの位置で、データを取得してコピーするなら、AutoFilter にすればよいと思います。しかし、こうすれば、AdvancedFilter のモードはチェックできます。

FilterMode の使用例:

If ActiveSheet.FilterMode Then
   ActiveSheet.ShowAllData
End If

QException in thread "main" java.…でも。

Javaの初心者です。
仕事で他の方が作ったプログラムをいじることになりました。
あるclassファイルを実行しようとしたところ、javaコマンドで実行しようとしたところ、タイトルにあるように、Exception in thread "main" java.lang.NoClassDefFoundError:というエラーメッセジーが出ました。
いろいろ調べた結果、「:」以降に出てくる名前のクラスが見つからず、大半の場合は、CLASSPATHの指定がされていなかったり、まちがっていることが分かりました。
ただ、今回、表示されたのは、こんなクラス名なんです。
org/apache/bcel/generic/ATHROW

bcel-5.1.jarというファイルはあるのですが、これをどこかに置いたら解決するものなのでしょうか?
ためしに、実行しようとしたclassファイルと同じディレクトリに置いてましたが、何の効果もありませんでした。

もしお分かりになる方がいらっしゃいましたら、よろしくお願い致します。

Aベストアンサー

CLASSPATHにそのjarファイル(のフルパス)を追加してください。

jarファイルの中には、classファイルが入っています。
通常はCLASSPATHには、classファイルのあるディレクトリを指定しますが、
jarファイルに入っているclassファイルを呼び出したい場合は
jarファイルそのものをCLASSPATHに追加します。

Qバインドと接続(BindExceptionとConnectException)の違い

BindExceptionとConnectExceptionの違いがわからず悩んでいます。

Socketを使って通信する際、すでに接続が確立しているポート番号を
使うことはできないのはわかります。
ここで、「すでに接続が確立している」とは
たとえばnetstatコマンド(netstat -n)でstatusがESTABLISHED
になっていることかなあと思っています。

ところが、同じESTABLISHEDとなっているポートでも、
ある番号ではBindExceptionが、別の番号ではConnectExceptionが出ます。
http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/java/net/class-use/SocketException.html
を見てみると、
BindException:
ソケットをローカルアドレスおよびポートにバインドしようとしているときエラーが発生したことを示します。
ConnectException :
ソケットをリモートアドレスおよびポートに接続しようとしたときエラーが発生したことを示します。

のようにありますが、「バインド」と「接続」の違いがわかりません。
どなかた教えて頂ける方、いらっしゃいませんでしょうか。

BindExceptionとConnectExceptionの違いがわからず悩んでいます。

Socketを使って通信する際、すでに接続が確立しているポート番号を
使うことはできないのはわかります。
ここで、「すでに接続が確立している」とは
たとえばnetstatコマンド(netstat -n)でstatusがESTABLISHED
になっていることかなあと思っています。

ところが、同じESTABLISHEDとなっているポートでも、
ある番号ではBindExceptionが、別の番号ではConnectExceptionが出ます。
http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/ja...続きを読む

Aベストアンサー

TCP/IP の話となりますが、

TCP/IP では、ネットワーク通信の際に、クライアントとサーバ間にて、通信を
行う事になります。

クライアントとは、サーバへ接続を要求して、通信を処理する者です。

サーバとは、クライアントからの接続を受け付け、通信を処理する者です。

通信の流れとしては、
サーバが接続受付用のアドレスとポートを待ち受け用ポートとして、関連付けし、
使用します。この処理をバインドと呼んでいます。

次に、クライアントから、サーバが待ち受けしているアドレスとポートへ接続
を要求します。正しくサーバへ接続されると、クライアント/サーバ間にて、
通信が出来る事でしょう。
この接続を接続と呼んでいます。(#この説明は蛇足か。)

ですから、
> BindException:
> ソケットをローカルアドレスおよびポートにバインドしようとしているときエラーが発生したことを示します。
は、サーバ側で、待ち受け用ポートを準備している時に失敗。

ConnectException :
ソケットをリモートアドレスおよびポートに接続しようとしたときエラーが発生したことを示します。
は、クライアント側で、サーバへの接続に失敗。

と言う解釈だと思います。

TCP/IPや、クライアント/サーバに付いては、必要に応じて、別途調べてみてください。

TCP/IP の話となりますが、

TCP/IP では、ネットワーク通信の際に、クライアントとサーバ間にて、通信を
行う事になります。

クライアントとは、サーバへ接続を要求して、通信を処理する者です。

サーバとは、クライアントからの接続を受け付け、通信を処理する者です。

通信の流れとしては、
サーバが接続受付用のアドレスとポートを待ち受け用ポートとして、関連付けし、
使用します。この処理をバインドと呼んでいます。

次に、クライアントから、サーバが待ち受けしているアドレスとポート...続きを読む

Qjava.lang.NoClassDefFoundError

こちらの
http://www.hellohiro.com/socket.htm
サーバー(マルチスレッド)とクライアントのプログラムを
Windows環境でサーバーのアドレスを"localhost"にして一台のPC上で実行したところ
うまくいったのですが
今度はサーバー側のプログラムをlinuxサーバーにおいてアドレスを指定して行ったところ
コンパイルは正常に行えて(classファイルは作成されました)、実行するとクライアントからの接続までは
うまくいくのですが
("172.0・・・ から接続がありました"とは表示されます)
その後通信が切れてしまい
Exception in thread "main" java.lang.NoClassDefFoundError:
Connect
という例外が起きてしまいます。
過去ログなどを調べたところクラスの定義が見つからないとのことなのですがソースにはしっかり定義されていると思います
またサーバーのプログラムの実行を
java -classpath . HelloWorldMultiThreadServer
などでも行ってみましたが同じ状況になってしまいます
どなたか是非アドバイスをいただけないでしょうか
よろしくお願い致します

こちらの
http://www.hellohiro.com/socket.htm
サーバー(マルチスレッド)とクライアントのプログラムを
Windows環境でサーバーのアドレスを"localhost"にして一台のPC上で実行したところ
うまくいったのですが
今度はサーバー側のプログラムをlinuxサーバーにおいてアドレスを指定して行ったところ
コンパイルは正常に行えて(classファイルは作成されました)、実行するとクライアントからの接続までは
うまくいくのですが
("172.0・・・ から接続がありました"とは表示されます)
その後通信が切れてし...続きを読む

Aベストアンサー

linux側でjava -versionを叩いて、1.4と出ますよね?

コンパイル時と実行時のJavaバージョンが異なっていたり
しないでしょうか?

私は、下記のようなシェルを作成して問題なく動作してます。
クラスパスも指定無しですので、Java1.4で
JAVA_HOMEの設定があれば大丈夫だと思います。
※JAVA_HOMEの設定が無いとjava.net.*等のライブラリに
パスが通らないかもしれないです。(たぶん。。。)

#!/bin/sh

JAVA_HOME=/opt/java1.4

echo $JAVA_HOME

PATH=$JAVA_HOME/bin:$PATH

echo $CLASSPATH

java -version
javac HelloWorldSocketServer.java
java HelloWorldSocketServer


例外のスタックトレースをもっと付けてもらえると
良いのですが・・・
Exception in thread "main" java.lang.NoClassDefFoundError:
Connectの続きを

linux側でjava -versionを叩いて、1.4と出ますよね?

コンパイル時と実行時のJavaバージョンが異なっていたり
しないでしょうか?

私は、下記のようなシェルを作成して問題なく動作してます。
クラスパスも指定無しですので、Java1.4で
JAVA_HOMEの設定があれば大丈夫だと思います。
※JAVA_HOMEの設定が無いとjava.net.*等のライブラリに
パスが通らないかもしれないです。(たぶん。。。)

#!/bin/sh

JAVA_HOME=/opt/java1.4

echo $JAVA_HOME

PATH=$JAVA_HOME/bin:$PATH

echo $CLASS...続きを読む

QFilter関数を用いた結果、何も検索されなかった場合

Filter関数を用いた結果、何も検索されなかった場合

以下のプログラムを実行したところ、セルはまっさらのまま。
  Sub Macro3()
    Dim a As Variant
    a = Array(1, 2, 3, 4, 5)
    ActiveCell.Value = Filter(a, 8)
  End Sub

そこで
  If Filter(A,8) = "" Then ・・・(1)
    ActiveCell.Offset(1, 0).value = False
  Else表示
    ActiveCell.Offset(1, 0).value = True
  endif
を書き加えてみましたところ、
  実行時エラー'13':
  型が一致しません
とのエラーが出ます。

(1)を
  If ActiveCell.value = "" Then
と書く分には問題ないのですが、だからと言って、Filter(A,8)の値は""で表せないのですね。

とりあえずこの五行はエラーが出ているので削除しました。

次に
  ActiveCell.Offset(1, 0).Value = IsEmpty(Filter(A, 8))
を書き加えると、アクティブセルの一つ下は「False」となります。Filter(A,8)では何も抽出されないのですから、空か否かを問われたら「True」のはずなのですが・・・やはり何か戻り値があるのですね・・・

ではエラー値が戻っているのかと
  ActiveCell.Offset(2, 0).Value = IsError(Filter(A, 8))
を書き加えると、「False」ですからエラー値ではありません。

  If Filter(A,8) = Null Then ・・・(2)
    ActiveCell.Offset(3, 0).value = False
  Else表示
    ActiveCell.Offset(3, 0).value = True
  endif
を書き加えたところ、またも
  実行時エラー'13':
  型が一致しません
とのエラーが出ます。

(2)を
  If Filter(A,8) = Error Then
と書き換えてみても同じです。

試しに(2)を
  If Cvar(Filter(A,8)) = Null Then
としてみたり
  If Filter(A,8) = Cvar(Null) Then
としてみたり
  If Cvar(Filter(A,8)) = Cvar(Null) Then
としてみたりしましたが、同じエラーが出ます。

Ubound(Filter(A,8)の値は-1です。これをもってこの場合の戻り値とするしかないのでしょうか。filter関数の戻り値が分からないからUbound関数を使っていることがモロばれで、嫌なんです。

  If Filter(A,8) = なんとか Then
のなんとかに入る戻り値をどなたか教えてください。

Filter関数を用いた結果、何も検索されなかった場合

以下のプログラムを実行したところ、セルはまっさらのまま。
  Sub Macro3()
    Dim a As Variant
    a = Array(1, 2, 3, 4, 5)
    ActiveCell.Value = Filter(a, 8)
  End Sub

そこで
  If Filter(A,8) = "" Then ・・・(1)
    ActiveCell.Offset(1, 0).value = False
  Else表示
    ActiveCell.Offset(1, 0).value = True
  endif
を書き加えてみましたところ、
  実行時エラー'13':
  型が一致しません
とのエ...続きを読む

Aベストアンサー

Filterの結果がどうなるのか理解できていないと思います。

Filterの結果は複数件数の可能性がありますので配列(Array)で結果が返ります。
よって該当データがなくてもエラーになりません。

該当データがあったのか、無かったのかの判断は配列が何件あるかを調べれば良いです。
該当件数を調べるのは「UBound」を使用してください。
makojiさんのデータを例にすると
  UBound(Filter(a, 8)) … -1
  UBound(Filter(a, 3)) … 0
になります。

プログラム的には
 If UBound(Filter(a, 8)) = -1 Then
   ActiveCell.Offset(1, 0).Value = False
 Else
   ActiveCell.Offset(1, 0).Value = True
 End If

Qjava.lang.NoClassDefFoundErrorというエラーが出ます

ご質問させて頂きます。

自分のPC(XP)からTelnetで
LINUX(Red Hat Linux release 9 (Shrike))に接続しています。

サンプルを参考にして以下のコードを作ってみました。
これは、PostgreSQLで作成したデータベース(aa)の
テーブル(test)のデータを表示させようとしています。

import java.sql.*;

public class sample1{
 public static void main(String [] args){
  String driver = "org.postgresql.Driver";
  String url = "jdbc:postgresql://192.178.215.230/home/postgres/data/aa";
  try{
    Class.forName(driver);
    Connection con = DriverManager.getConnection(url,"postgres","aaaa");
    Statement st = con.createStatement();
    ResultSet rs = st.executeQuery("SELECT * FROM test"); 
    System.out.println("shainno shimei ");
    while ( rs.next() ){ 
      System.out.println(" "+rs.getInt("shainno")+" "+ rs.getString("shimei"));
    }
    rs.close(); 
    st.close(); 
    con.close();  
  }catch (SQLException sqlEx){
    System.out.println("SQLERROR: " + sqlEx.toString());
  }catch (Exception ex){
    ex.printStackTrace();
  }
 }
}

これを実行すると、
[postgres@localhost postgres]$ java sample1
以下のようなエラーが出てします。
Exception in thread "main" java.lang.NoClassDefFoundError: sample1

ご教授して頂けたら幸いです。

ご質問させて頂きます。

自分のPC(XP)からTelnetで
LINUX(Red Hat Linux release 9 (Shrike))に接続しています。

サンプルを参考にして以下のコードを作ってみました。
これは、PostgreSQLで作成したデータベース(aa)の
テーブル(test)のデータを表示させようとしています。

import java.sql.*;

public class sample1{
 public static void main(String [] args){
  String driver = "org.postgresql.Driver";
  String url = "jdbc:postgresql://192...続きを読む

Aベストアンサー

ふたたび,#1です.

> 何度も厚かましいお願いで
> 大変に恐縮ですが
> ご教授して頂けたら幸いです。

いえいえ.
もうすぐできますよ.頑張りましょう.

PostgreSQLのODBCドライバをCLASSPATHに含めていますか?

postgresql.jarとかpg72jdbc2.jarといったファイルがどこかにあるはずです.
Linuxでの書式はわかりませんので,他の方にお願いするとして...汗

Windowsでは以下のようになります.
CLASSPATH=.;C:\dir\postgresql.jar;c:\...


人気Q&Aランキング