- PR -

コンパイルエラー(シンボル: クラス)

投稿者投稿内容
mso
ぬし
会議室デビュー日: 2003/12/04
投稿数: 496
お住まい・勤務地: 宮城
投稿日時: 2003-12-12 11:22
引用:

ぽんさんの書き込み (2003-12-12 11:12) より:
引用:

msoさんの書き込み (2003-12-12 11:05) より:

同じディレクトリにある場合はimportする必要が
ないと認識していたのですが、間違えでしょうか?


いえ、合ってますよ。




えっと、きっと私の考えは違うと思います。
(あれ?)

引用:

AddSampleQueryFormのソースも提示して頂くと何か分かるかもしれません。

[追記]
いや、AddSampleQueryFormのソースは関係無いかな・・・

[ メッセージ編集済み 編集者: ぽん 編集日時 2003-12-12 11:14 ]





一応、ソースを公開しておきます。

package samples.add;
import org.apache.struts.action.ActionForm;

public class AddSampleQueryForm extends ActionForm{

private String parm1;
private String parm2;
private String result;

public void setParm1(String parm1){
this.parm1 = parm1;
}
public String getParm1(){
return parm1;
}
public void setParm2(String parm2){
this.parm2 = parm2;
}
public String getParm2(){
return parm2;
}
public void setResult(String result){
this.result = result;
}
public String getResult(){
return result;
}
}


架空兎
ベテラン
会議室デビュー日: 2003/08/18
投稿数: 78
お住まい・勤務地: さいたま氏
投稿日時: 2003-12-12 11:30
引用:

msoさんの書き込み (2003-12-12 10:38) より:

[uchinom@localhost add]$ javac AddSampleAction.java
AddSampleAction.java:16: シンボルを解決できません。
シンボル: クラス AddSampleQueryForm
場所 : samples.add.AddSampleAction の クラス
AddSampleQueryForm queryForm = (AddSampleQueryForm)form;


-sourcepath を指定してみてはどうでしょうか?

例)javac -sourcepath sourcepath AddSampleAction.java
mso
ぬし
会議室デビュー日: 2003/12/04
投稿数: 496
お住まい・勤務地: 宮城
投稿日時: 2003-12-12 11:35
msoです。

引用:

架空兎さんの書き込み (2003-12-12 11:30) より:

-sourcepath を指定してみてはどうでしょうか?

例)javac -sourcepath sourcepath AddSampleAction.java




返事ありがとうございます。
sourchpathで実行をしてみたのですが、
だめでした。
出力されるエラーメッセージも同様のものでした。
Wata
ぬし
会議室デビュー日: 2003/05/17
投稿数: 279
投稿日時: 2003-12-12 11:44
引用:

ばんさんの書き込み (2003-12-12 10:54) より:
CLASSPATH はどのような設定をしていますか?
AddSampleQueryForm.class
はカレントディレクトリからみて、どこにおいていますか?


まずは、これに答えるべきだと思います。

#追加
http://www.gimlay.org/~javafaq/S017.html
にパッケージに関するFAQがあります。
このあたりの内容は問題ないでしょうか?

[ メッセージ編集済み 編集者: Wata 編集日時 2003-12-12 11:49 ]

[ メッセージ編集済み 編集者: Wata 編集日時 2003-12-12 11:51 ]
none
会議室デビュー日: 2003/01/06
投稿数: 3
投稿日時: 2003-12-12 11:47
パッケージとクラスパスの関係ではないかと...

コンパイル箇所:
[uchinom@localhost add]$ javac AddSampleAction.java

パッケージ:
package samples.add;

ですよね?

[uchinom@localhost add]$ cd ../..
[uchinom@localhost ???]$ javac samples/add/AddSampleAction.java

ではどうですか?
#??? はディレクトリ名がわからないので
mso
ぬし
会議室デビュー日: 2003/12/04
投稿数: 496
お住まい・勤務地: 宮城
投稿日時: 2003-12-12 11:50
引用:

Wataさんの書き込み (2003-12-12 11:44) より:
引用:

ばんさんの書き込み (2003-12-12 10:54) より:
CLASSPATH はどのような設定をしていますか?
AddSampleQueryForm.class
はカレントディレクトリからみて、どこにおいていますか?


まずは、これに答えるべきだと思います。



すいません。
反応が鈍くなっていました。
classpathの設定は下記のとおりです。
CLASSPATH=:/usr/local/java/jdk/jre/lib/ext
:/usr/local/java/jdk/lib
:/usr/local/tomcat/common/lib
:/usr/local/tomcat/common/lib/struts.jar
:/usr/local/tomcat/common/lib/servlet.jar
:/usr/local/java/jdk/jre/lib/ext
:/usr/local/java/jdk/lib:/usr/local/tomcat/common/lib
:/usr/local/tomcat/common/lib/struts.jar
:/usr/local/tomcat/common/lib/servlet.jar
(今、気がついたのですが重複しているところがある・・・)

AddSampleQueryForm.classはカレントディレクトリにあります。


返事が遅れましたが、よろしくお願いします。

mso
ぬし
会議室デビュー日: 2003/12/04
投稿数: 496
お住まい・勤務地: 宮城
投稿日時: 2003-12-12 11:58
msoです

引用:

noneさんの書き込み (2003-12-12 11:47) より:
パッケージとクラスパスの関係ではないかと...

コンパイル箇所:
[uchinom@localhost add]$ javac AddSampleAction.java

パッケージ:
package samples.add;

ですよね?



はい。

引用:

[uchinom@localhost add]$ cd ../..
[uchinom@localhost ???]$ javac samples/add/AddSampleAction.java

ではどうですか?
#??? はディレクトリ名がわからないので




同様の手順でやったのですが、
同じコンパイルエラーがでます。
他に幾つかjavac ****.javaというようなことを
やっているのでjavaコンパイラ自体は問題が無いと思います。
(他のjavaソースではimportなどもしているので、
importするファイルもあるはず)
Gio
ぬし
会議室デビュー日: 2003/11/28
投稿数: 350
お住まい・勤務地: 都内から横浜の間に少量発生中
投稿日時: 2003-12-12 12:23
CLASSPATH にカレントディレクトリが入っていないようですが、書き漏らしでしょうか。
入っていれば none さんが書かれた方法か、もしくは AddSampleQueryForm.class を ./samples/add に移動すれば解決すると思いますが。(結局同じことです)

私には CLASSPATH もそうですが、パッケージとディレクトリの対応が把握できていないように見えます。

[ メッセージ編集済み 編集者: Gio 編集日時 2003-12-12 12:24 ]

スキルアップ/キャリアアップ(JOB@IT)