2013-04-26 2 views
0

여기에 많은 질문을 받았지만 이전에 찾은 모든 게시물 (나와 많은 것을 찾았습니다)이 저를 위해 작동하지 않습니다.NoClassDefFoundError 프로그램을 실행할 때

저는 서버에 업로드 한 기본 Java 프로그램이 있습니다. SSH를 통해 서버에 로그인하면 .java 파일이 내 홈 디렉토리에 있습니다. 서버에서 컴파일하고 .class 파일이 생성되었는지 확인합니다.

하지만

java <program name> 

사용하여 프로그램을 실행하려고하면 그것은 나에게 오류를 제공합니다.

무엇을 시도 했습니까? 패키지 이름으로 프로그램을 호출이

  • 에서 두 파일과 하위 디렉토리를 생성

    • (즉, 자바 packagename.programname)
    • 서버 오프를 컴파일하고
    • 가 명시 적으로 설정 모두에 전송 -cp를 사용하는 클래스 경로

    정말 이상한 점은 다른 프로그램을 가져 와서 문제없이 컴파일하고 실행할 수 있다는 것입니다. 기본적으로 동일한 프로그램이지만 붙여 넣은 부분을 광산에 붙여 넣음).

    필요한 경우 코드의 일부를 여기에 포함 할 수 있습니다. 필요한 부분을 정확히 말하면됩니다.

  • +1

    대부분의 경우 NoClassDefErrors는 클래스 경로 문제로 인한 것으로 클래스/jar 파일이 경로에없는 것 같습니다. – kosa

    +0

    '.java' 파일을 서버에 보관하는 것은 좋은 생각이 아닙니다. 왜'.jar '가 아닌가? – Smit

    +0

    .jar를 이전에 시도했지만 프로그램이 실행되지만 부분을 올바르게 실행하지 못합니다. 그래서 나는 서버에서 java 파일을 실행하는 것으로 옮겼습니다. 필요한 클래스 파일이없는 이유를 알 수 없습니다. 그것들은 javac을 실행할 때 생성되므로 제대로 작동하지 않는 한 그렇게 생각하지 않습니다. – monkeeman

    답변

    0

    클래스 경로 문제 또는 클래스/jar 파일 버전 불일치가 발생할 때 JWhich을 사용해보십시오.

    관련 문제