- PR -

初歩的な質問です。

投稿者投稿内容
みき
会議室デビュー日: 2005/04/29
投稿数: 12
投稿日時: 2005-04-29 23:24
Java始めたばかりです。
2つのクラスがあります。
Class TestA{
・・・
TestA(){
TestB tb = new TestB();
}
・・・
}
Class TestB{
TestB(){
}
}

みたいなクラスがあります。
無名のパッケージならコンパイルは通るのですが、
package com.aaa.bbb;
として、
c:\work\java\com\aaa\bbbの下に
TestA.java TestB.javaを置いてコンパイル
しようとしたのですが、うまくコンパイルできません。
どのようにすればいいのでしょうか?
初歩的質問で申し訳ありません。
未記入
会議室デビュー日: 2005/04/06
投稿数: 15
投稿日時: 2005-04-29 23:47
引用:

みきさんの書き込み (2005-04-29 23:24) より:
無名のパッケージならコンパイルは通るのですが、
package com.aaa.bbb;
として、
c:workjavacomaaabbbの下に
TestA.java TestB.javaを置いてコンパイル
しようとしたのですが、うまくコンパイルできません。


これは参考にならないでしょうか?がんばってくださいね。
http://www.atmarkit.co.jp/fjava/rensai2/javaent10/javaent10.html
みき
会議室デビュー日: 2005/04/29
投稿数: 12
投稿日時: 2005-04-30 00:12
C:\work\java\com\aaa\bbbの下に
TestA.java,TestB.javaを置きました。
それぞれの中身は
【TestA.java】
package com.aaa.bbb;
import com.aaa.bbb.TestB;
public class TestA{
public static void main(String[] args){
TestB tb = new TestB();
}
TestA(){
}
}

【TestB.java】
package com.aaa.bbb;
public class TestB{
TestB(){
}
}

です。
C:\work\java\com\aaa\bbb上で、
javac TestA.java とコンパイルしましたが、
TestBが見つからない旨のエラーが返ってきます。
どこが間違えなのかご指摘ください。
お願いします。
かつのり
ぬし
会議室デビュー日: 2004/03/18
投稿数: 2015
お住まい・勤務地: 札幌
投稿日時: 2005-04-30 00:33
C:\work\java\com\aaa\bbbに配置して、無名パッケージならOKとの事なので、
恐らくC:\work\java\com\aaa\bbbにクラスパスが設定されていますね。
クラスパスをC:\work\javaにして下さい。
それを起点として、パッケージcom.aaa.bbbに対応して
\com\aaa\bbb\にあるクラスを参照するようになります。
未記入
会議室デビュー日: 2005/04/06
投稿数: 15
投稿日時: 2005-04-30 00:41
引用:

みきさんの書き込み (2005-04-30 00:12) より:
C:workjavacomaaabbb上で、
javac TestA.java とコンパイルしましたが、
TestBが見つからない旨のエラーが返ってきます。
どこが間違えなのかご指摘ください。
お願いします。


念のため確認しますが、TestB.javaは先にコンパイルしていますよね?
TestAクラスでTestBクラスを呼んでいるので、
当然TestBが先にコンパイルされている必要があります。
みき
会議室デビュー日: 2005/04/29
投稿数: 12
投稿日時: 2005-04-30 01:21
TestBは先にコンパイルしてます。
でもコンパイルエラーが起きます。
aa
ぬし
会議室デビュー日: 2004/01/08
投稿数: 299
投稿日時: 2005-04-30 07:52
そうですか。
でも、コンパイルエラーといっても、どのようなエラー内容(エラーメッセージ)なのかを教えてくれなければ、だれも分かりませんよ。
みき
会議室デビュー日: 2005/04/29
投稿数: 12
投稿日時: 2005-04-30 08:00
失礼しました。こんな感じです↓
ちなみにクラスパスの設定は何もしてません。

C:\\work\\java\\com\\aaa\\bbb>javac TestA.java
TestA.java:2: シンボルを見つけられません。
シンボル: クラス TestB
場所 : com.aaa.bbb の パッケージ
import com.aaa.bbb.TestB;
^
TestA.java:5: シンボルを見つけられません。
シンボル: クラス TestB
場所 : com.aaa.bbb.TestA の クラス
TestB tb = new TestB();
^
TestA.java:5: シンボルを見つけられません。
シンボル: クラス TestB
場所 : com.aaa.bbb.TestA の クラス
TestB tb = new TestB();
^
エラー 3 個

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