Java 설치 손상


1

최신 업데이트 이후로 Java 설치가 손상되었습니다. Java를 필요로하는 프로그램은 열리지 않습니다. 명령 줄에서 다음 명령을 사용하여 프로그램을 실행하려고하면 Java MyJavProg 나는 메시지를 받는다. Error occurred during initialization of VM java/lang/NoClassDefFoundError: java/lang/Object.

자바와 관련된 모든 것을 제거하고 다시 설치해야합니까?

답변:


1

나는 자바를 재설치하면서 이러한 문제를 성공적으로 해결했다. 너는 무엇을 느슨하게해야 할까? Java는 무료로 사용할 수 있습니다. (무료 툴바 애드온을 피하십시오).


도움이 되셨습니까? JDK가 아니라 JDK가 PATH 및 CLASSPATH에 대한 수동 편집이 필요하다는 것을 알고 계셨습니까?
Karan

@ 카란 나는 사실을 놓쳤다. 내 답변의 한 가지 특징은 질문자가 빠르고 쉬운 해결책을 간과 한 경우를 대비하여 가장 확실한 해결책으로 시작하는 것입니다.
Guy Thomas

1

문제는 경로가 잘못된 Java 버전을 타겟팅하고 있다는 것입니다.

다음을 먼저 시도해보십시오 (Windows 설치를 가정합니다).

귀하의 %PROGRAMFILES%\Java 폴더

여러 Java 설치가 표시 될 수 있습니다 (설치에 오류가 없다고 가정 할 때).

명령 프롬프트를 실행하십시오. %PROGRAMFILES%\Java 폴더로 이동 한 다음 관련 java 버전으로 변경하고 java 파일의 전체 경로를 사용하여 bin 폴더에서 명령을 다시 시도하십시오. 그것이 작동하면 우리는 범인을 발견했습니다.

이제 올바른 경로를 가리 키도록 환경 변수를 편집해야합니다.

환경 변수로 이동하여 PATH (필요한 경우 CLASSPATH)를 편집하고

32 비트 Windows에서

"C : \ Program Files \ Java \ jdkINCORRECTJAVAVERSION \ bin \"을
"   C : \ Program   Files \ Java \ CORRECTJAVAVERSION \ bin \ "

64 비트 Windows에서

"C : \ Program Files (x86) \ Java \ jdkINCORRECTJAVAVERSION \ bin \"
"C : \ Program Files (x86) \ Java \ CORRECTJAVAVERSION \ bin \"


내가 탐색하면 C:\Program Files\Java\jdk1.7.0_02\bin 실행하다 java.exe 거기에서 나는 성공적으로 자바 프로그램을 실행할 수있다. 그러나, 이것은 PATH 환경 변수에 이미 있습니다 ... 당신이 Windows (64 비트)에 대해 말한 것을 알 수 있습니다. 64 비트이지만 Java는 정상적으로 설치됩니다. program files
Celeritas

@Celeritas : 예, 64 비트 Windows에 64 비트 JDK를 설치하십시오. 귀하의 CLASSPATH는 (으)로 무엇입니까?
Karan

C:\Program Files\Java\jdk1.7.0_02\bin; 내 PATH 변수에 있습니다. CLASSPATH 변수가 없습니다.
Celeritas

한 가지 확인할 수있는 것은 java --version을 실행하고 기대하는 바를위한 올바른 버전을보고하는지 확인하는 것입니다. 당신이 다른 버전을 얻는다면 당신은 경로에서 더 높은 폴더에있는 자바 바이너리를 가질 수있다. 또한 경로에 JDK에 대한 참조가 하나만 있는지 확인하십시오 (여러 번 설치하는 경우). PATH 및 CLASSPATH 변수 설정에 대한 다음 링크를 확인하십시오. docs.oracle.com/javase/tutorial/essential/environment/...
Enigman

자바 버전을 실행할 수 없습니다. Link에는 Windows 7의 클래스 경로에 대한 지침이 없습니다.
Celeritas
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.