コンパイル
Javaのコンパイルが通らず悩んでいます。よい解決方法がありましたら、教えてください。
早速ですが、*.javaでコンパイルするとエラーが出ず、Hoge.javaの様にファイル名を指定すると『シンボルを見つけられません。』と、コンパイルエラーが発生してしまいます。
まず環境ですが、WindowsXP Pro SP3 で、Javaのバージョンは
C:\com\st\sample\scr>java -version
java version "1.5.0_10"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_10-b03)
Java HotSpot(TM) Client VM (build 1.5.0_10-b03, mixed mode, sharing)
で、CLASSPATHは、
CLASSPATH=.;.\WEB-INF\classes;.\WEB-INF\lib\struts-core-1.3.8.jar;C:\Tomcat5.5\common\lib\servlet-api.jar;C:\Java\JRE1.5.0\lib\ext\QTJava.zip
となってます。
実際には、
C:\com\st\sample\srcというフォルダーがあります。その中にはSampleServlet.javaとSampleBean.javaとSampleBean.classの3つのファイルがあります。
SampleServlet.javaとSampleBean.javaはパッケージ管理するよう package com.st.sample.src;
を記述してあり、SampleServlet.javaには
import com.st.sample.src.*;
も記述してあります。
そこで、
C:\com\st\sample\src>javac *.java
を実行すると、コンパイルエラーは出ずに2つのclassファイルが作成されます。
しかし、個別に
C:\com\st\sample\src>javac SampleBean.java
を実行するとコンパイルエラーは出ないものの、
C:\com\st\sample\src>javac SampleServlet.java
を実行すると、
SampleServlet.java:24: シンボルを見つけられません。
シンボル: クラス SampleBean
場所 : com.st.sample.src.SampleServlet の クラス
SampleBean sb = new SampleBean();
^
SampleServlet.java:24: シンボルを見つけられません。
シンボル: クラス SampleBean
場所 : com.st.sample.src.SampleServlet の クラス
SampleBean sb = new SampleBean();
^
というエラーが発生してしまいます。
*.javaだと問題なくコンパイルが通り、ファイル名を指定するとコンパイル通らないのでしょうか?設定が不足しているのでしょうか?ご存知でしたら、何かアドバイスを頂けないでしょうか。御願い致します。
お礼
CGIを使用するのですか…。 確かに、WEB上からコンパイルを行うのは何をされるのかわからないから怖いですね。 情報ありがとうございます。