カスタム検索

2009年12月6日日曜日

[Java] 親子関係のある2つのJavaソースファイル群のコンパイル: エラー「シンボルを見つけられません」

次の関係をもつ2つのJavaソースを「javac」にてコンパイルしたが、
<シンボルを見つけられません>とのエラーが。。。
 LTCInfoWithBeansServlet.java -> servletクラスファイルで、次のクラスを呼んでいる
 LTCInfoQueryBeans.java -> 上記servletクラスにて、インスタンス化されている





解決方法:
  コンパイルする際は、「LTCInfoWithBeansServlet.java 」をコンパイル宣言するだけでよい。
 つまり、「LTCInfoQueryBeans.java」を明示的にコンパイルする必要はない。



  servletクラスをコンパイルする際は、次のように実行する。
 「G:\study\Web Application\LTCInfoWithBean\src>javac -classpath ".;F:\Program Files\Apache Software Foundation\Tomcat 5.5\common\lib\servlet-api.jar" ltcinfo\LTCInfoWithBeansServlet.java」


 ポイントは、classpathにて「""」で囲まれた文にて、「.;」を先頭につけることを忘れないこと。


得たこと:
  やはり、わざわざ呼ばれる方の.javaをそれぞれコンパイルする必要はない。
 親というか呼ぶ方の.javaをコンパイルすると、javacにて、子供というか呼ばれる方の.java達もコンパイルされる。
  但し、この自動子供ファイルコンパイルとは関係ないが、-classpathにて必要なjarファイルを宣言する際に、カレントディレクトリ「.」をくれぐれも忘れないように。

0 件のコメント: