実現したいこと
Main class をコマンドプロンプトで実行できるようする。
発生している問題・分からないこと
上の画像のようなファイル構造しています。
Main.class をコンパイルするため、コマンドプロンプトで
C:\Users\kenta\japp>java Main
と実行するとエラーが表示されます。
エラーメッセージ
error
1C:\Users\kenta\japp>java Main 2Exception in thread "main" java.lang.NoClassDefFoundError: japp/comment/Zenhan 3 at Main.main(Main.java:4) 4Caused by: java.lang.ClassNotFoundException: japp.comment.Zenhan 5 at java.net.URLClassLoader.findClass(Unknown Source) 6 at java.lang.ClassLoader.loadClass(Unknown Source) 7 at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) 8 at java.lang.ClassLoader.loadClass(Unknown Source) 9 ... 1 more
該当のソースコード
Main.class
1import japp.comment.Zenhan; 2public class Main { 3 public static void main(String[] args)throws Exception { 4 Zenhan.doWarusa(); 5 Zenhan.doTogame(); 6 japp.comment.Kouhan.callDeae(); 7 japp.comment.Kouhan.showMondokoro(); 8 } 9 10}
Zenhan.class
1package japp.comment; 2public class Zenhan { 3 public static void doWarusa(){ 4 System.out.println("きなこでござる。食えませんがの"); 5 } 6 public static void doTogame(){ 7 System.out.println("この老いぼれの目はごまかせんぞ。"); 8 } 9}
Kouhan.class
1package japp.comment; 2public class Kouhan{ 3 public static void callDeae(){ 4 System.out.println("えぇい、こしゃくな。くせ者だ!であえい!"); 5 } 6 public static void showMondokoro() throws Exception { 7 System.out.println("飛車さん、角さんもういいでしょう。"); 8 System.out.println("この紋所が目に入らぬか!"); 9 japp.comment.Zenhan.doTogame(); 10 } 11}
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
クラスjapp.comment.Zenhanがクラスパスに含まれていないことが原因の一つだと自分で調べました。
同様の質問があったのですが、メインクラスの実行で悩まれている事例ではなかったため質問させていただきました。どなたかお力をお貸しいただけますと幸いです。
補足
windows 11 home
JDK 1.は
回答1件
あなたの回答
tips
プレビュー