java初心者です。
複数ファイルにそれぞれクラスを記述する書き方で実行するとき、
java.lang.NoClassDefFoundErrorが発生します。
エラーの意味はクラスが見当たらないとのことですが
packageやimportの記載が異なっている気がします。
色々調べましたがどこがどう間違っているか見当がつきません。
下記ファイルの配置、ソース、コマンドラインを記載します。
お詳しい方のアドバイスお待ちしています。
##ファイルの配置
C:\Users\USER\Desktop\test\Class1.java
C:\Users\USER\Desktop\test\Class2.java
##ソース
//Class1.java import app.add.Class2; public class Class1 { public static void main(String[] args) { String a = args[0]; String b = args[1]; Class2 clas2 = new Class2(); String ans = clas2 .add(a, b); System.out.println(ans); } }
//Class2.java package app.add; public class Class2 { public static String add(String a, String b) { return a+b; } }
##コマンドライン
//コンパイルは成功する C:\Users\USER\Desktop\test>javac -encoding UTF-8 Class1.java Class2.java //java実行 C:\Users\USER\Desktop\test>java Class1 "aaa" "bbb" Exception in thread "main" java.lang.NoClassDefFoundError: app/add/Class2 at Class1.main(Class1.java:9) Caused by: java.lang.ClassNotFoundException: app.add.Class2 at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) ... 1 more パッケージやインポートの記載が異なっている?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/05/11 08:29
2021/05/11 09:05