나는 다음과 같은 오류 얻을 Test.class라는 실행 : 여기NoSuchMethodError 및 NoClassDefFoundError의 원인은 무엇입니까?
Exception in thread "main" java.lang.NoSuchMethodError: ml.Temp.<init>(Ljava/lang/String;II)V
at test.main(test.java:11)
그리고 내가 Temp.class을 포함하는 jar 파일이 기본적으로 test.java
import java.io.*;
import ml.*;
class test
{
public static void main(String[] args) throws FileNotFoundException, IOException
{
String filename = "input";
Temp id = new Temp(filename, 6, 100);
id.someFunction();
}
}
코드입니다 (온도입니다 내가 작성하고 ml 패키지 아래에있는 라이브러리 파일). Temp에는 이러한 세 개의 인수와 public someFunction을 사용하는 생성자가 있습니다.
이 방법이 도움이되는지 잘 모르겠지만 컴파일하는 동안 jar 파일의 클래스 경로가 포함되었습니다. 내가 Test.class라는의 실행 중에 jar 파일의 클래스 경로를 포함 할 때 나는 다음과 같은 얻을
Exception in thread "main" java.lang.NoClassDefFoundError: test
Caused by: java.lang.ClassNotFoundException: test
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class: test. Program will exit.
편집 :
가 나는 다음과 같이 컴파일하는 데 도움이 경우 (ml.jar 및 test.java이에 당신이 경로에 test.class
상주에서 명령 java -cp <path-to-ml.jar> test
를 실행해야합니다
javac -cp ml.jar test.java
어떻게 구축하고 실행합니까? –
첫 번째 오류가 발생하면 방금 Java 테스트를 수행했습니다. java -cp "ml.jar"테스트를 수행하면 두 번째 오류가 발생합니다. – Hari