
###実現したい事
Javaでパッケージを用いたソースを記述したのですが、wrong nameとエラーが出てしまいます。パッケージの記述部分をコメントアウトすると上手くいくのですが、パッケージを使うとエラーが出る原因が分かりません。すごく初歩的なミスをしている気がするのですが(ソースのミスとかではなくファイルの置き場所的なミス)、分かる方回答お願い致します。
###エラーメッセージ
java.lang.NoClassDefFoundError: kubotatsu (wrong name: kuboyama/kubotatsu)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at sun.applet.AppletClassLoader.findClass(AppletClassLoader.java:217)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.applet.AppletClassLoader.loadClass(AppletClassLoader.java:152)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at sun.applet.AppletClassLoader.loadCode(AppletClassLoader.java:626)
at sun.applet.AppletPanel.createApplet(AppletPanel.java:799)
at sun.applet.AppletPanel.runLoader(AppletPanel.java:728)
at sun.applet.AppletPanel.run(AppletPanel.java:378)
at java.lang.Thread.run(Thread.java:748)
###パッケージ部分の記述
java
1package kuboyama; 2
###ソースコード
java
1/*<applet code = "kubotatsu.class" width="300" height="100"> 2</applet>*/ 3//package kuboyama; 4 5import java.applet.*; 6import java.awt.*; 7public class kubotatsu extends Applet{ 8/*フィールド変数*/ 9 Label lbl = new Label("ラベル"); 10 Checkbox cbox1 = new Checkbox("チェックボックス(true)",true); 11 Checkbox cbox2 = new Checkbox("チェックボックス(false)",false); 12 13/*メソッド*/ 14 @Override 15 public void init(){ 16 setBackground(Color.lightGray); 17 add(this.lbl); 18 add(this.cbox1); 19 add(this.cbox2); 20 } 21}
###ディレクトリ構造のキャプチャ
###補足
ソースコードはkuboyamaというディレクトリの中にkubotatsu.javaという名前で入っています。
クラスファイルもkuboyamaというディレクトリの中にkubotatsu.classという名前で入っています。
kuboyamaディレクトリでjavac kubotatsu.javaとコンパイルすると、コンパイルは通ります。
同じkuboyamaディレクトリ内でappletviewer kubotatsu.javaと実行するとアプレットが初期化されていないと表示され、エラー文がコマンドプロンプトにずらずら出ます。
回答2件
あなたの回答
tips
プレビュー