2012-06-11 8 views
3

현재 저는 Ubuntu 11.10과 Java SE 1.6.0_26을 사용하고 있습니다. 매우 간단한 "Hello World"앱을 실행하려고합니다. 홈 폴더에 java 파일 HelloWorld.java을 넣었습니다. 나는 javac HelloWorld.java 명령을 사용하여 그것을 컴파일했다. 나는 컴파일 에러가 나타나지 않고 HelloWorld.class이 생성 되었기 때문에 작동한다고 생각한다. 여기 내 자바 코드, BTWJava 응용 프로그램을 시작할 수 없습니다.

Exception in thread "main" java.lang.NoClassDefFoundError: HelloWorld 
Caused by: java.lang.ClassNotFoundException: HelloWorld 
     at java.net.URLClassLoader$1.run(URLClassLoader.java:202) 
     at java.security.AccessController.doPrivileged(Native Method) 
     at java.net.URLClassLoader.findClass(URLClassLoader.java:190) 
     at java.lang.ClassLoader.loadClass(ClassLoader.java:306) 
     at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) 
     at java.lang.ClassLoader.loadClass(ClassLoader.java:247) 
Could not find the main class: HelloWorld. Program will exit. 

: 내가 명령 java HelloWorld을 입력

는이 오류가

public class HelloWorld { 
    public static void main (String args[]) { 
     System.out.println("Hello World!!!"); 
    } 
} 
+2

java 명령을 실행하는 폴더는 어느 폴더입니까? –

+0

@AmitBhargava 홈 폴더. my HelloWorld.java와 HelloWorld.class가 상주하는 디렉토리. – TheOnlyIdiot

+2

다음과 같이 해보시겠습니까? java -classpath HelloWorld –

답변

7

그것은 파일이 클래스 경로에없는 것을 할 수 있습니다 ..

java -classpath . HelloWorld 

V

: 다음 명령을 시도
+0

안녕하세요. 문제의 원인을 알려주시겠습니까 ??? 감사. – TheOnlyIdiot

+0

부적절하게 설치되지 않았다면 Java가 classpath에 문제가 있다는 것이 이상하다는 것을 알았습니다. 일반적으로, (U) buntu의 패키지가 아닌 Java 파일에 대해서는이 문제가 없어야합니다. 그러나 이것은 항상 알기에 항상 좋은 것입니다. – Makoto

+1

@TheOnlyIdiot - 그가 말했듯이 문제는 클래스가 클래스 경로에 없다는 것입니다. 그것은 모두'java' 명령의 수동 입력에서 설명됩니다. 특히 classpath 설정에 관한 페이지. –

관련 문제