プロが教えるわが家の防犯対策術!

Beanクラスを作成し、そのBeanクラスをServletでimportしたいのですがコンパイルするとエラーになってしまいます。

Bean(TestBean.java)をsampleパッケージに保存してコンパイルした後に
Servlet(Test.java)を
-----------------------------------------------
import sample.TestBean;

import javax.servlet.*;
・・・・・・・
・・・・・・・
------------------------------------------------
として、sampleファイルのひとつ上のディレクトリーに保存してコンパイルすると

Test.java:1: シンボルを解釈処理できません。

とエラーになってしまいます。
原因がお分かりになるかた、ご教授をお願いできないでしょうか。よろしくお願いいたします。

A 回答 (2件)

stardustです。



回答するには少々情報が少ないのですが、
考えられるのは以下の2点です。

・TestBean.javaで「package」の宣言が適切にされていない

・Test.javaをコンパイルする際にクラスパスが適切に設定されていない
(TestBean.classがsampleディレクトリ直下にちゃんとできているかも要確認です。)

確認してみて下さい。

※ TestBean.javaの内容と、コンパイルの方法(コマンドラインからjavacを実行しているならば、その内容など)を書けば、皆さんからも回答を頂けるのではと思います。

この回答への補足

続き、
○クラスパスの設定ですが
set classpath=c:\jdk1.3.1_01\lib;c:\jdk1.3.1_01\lib\tools.jar;c:\jakarta-tomcat-3.2.1\lib\servlet.jar%classpath%

と設定しました。OSをXP(home)を使っていて、「システム」の「詳細タブ」で設定しました。

何かコンパイルエラーの原因がありますでしょうか?

よろしくお願いいたします。

補足日時:2002/02/10 11:13
    • good
    • 0
この回答へのお礼

stardustさん、ご回答ありがとうございます。
また、ご指摘頂きましてありがとうございます。

○TestBean.javaの内容は下記のURLを参照お願いいたします。
http://www.geocities.co.jp/SiliconValley-Cuperti …
○Test.javaの内容は下記のURLを参照お願いいたします。
http://www.geocities.co.jp/SiliconValley-Cuperti …

○コンパイルの方法ですが、
C:\java_sample>javac sample\TestBean.java
を実行して、sampleディレクトリーにTestBean.classが作成されました。次に Test.javaをコンパイルすると
C:\java_sample>javac Test.java
Test.java:1: シンボルを解釈処理できません。
シンボル: クラス TestBean
位置 : sample の パッケージ
import sample.TestBean;
^
Test.java:23: シンボルを解釈処理できません。
シンボル: クラス TestBean
位置 : Test の クラス
TestBean ankenDbBean = new TestBean();
^
Test.java:23: シンボルを解釈処理できません。
シンボル: クラス TestBean
位置 : Test の クラス
TestBean ankenDbBean = new TestBean();
^
エラー 3 個
とエラーになってしまいます。この後続きます。

お礼日時:2002/02/10 11:11

stardustです。



補足、拝見しました。
ほぼやり方としてはあってますね。

気になったのはクラスパスの設定です。
クラスパスの中に「.」(カレントディレクトリ)は含まれているでしょうか?

> echo %CLASSPATH%

として、確認してみてください。

※ コンパイル時、CLASSPATH環境変数が設定されていない場合は「.」をクラスパスとして使用しますが、CLASSPATH環境変数が設定されている場合はその設定が優先されるようです。
したがって、CLASSPATH環境変数を設定していて、その中に「.」が含まれていない場合、カレントディレクトリはクラスパスとして使用されないんですね。

※ また、CLASSPATH環境変数を使用する方法よりも、-classpathオプションによる指定が推奨されているようです。

詳しくは参照URL「クラスパスの設定」をご覧ください。

参考URL:http://java.sun.com/j2se/1.3/ja/docs/ja/tooldocs …
    • good
    • 0
この回答へのお礼

stardustさん、またのご回答ありがとうございます。

お陰さまで、無事にコンパイルできました。

原因は、stardustさんのご指摘のとおり、クラスパスの中に[.]が含まれておりませんでした。

大変助かり、勉強になりました。

ありがとうございました。

お礼日時:2002/02/11 19:09

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