Java 오류 열기 레지스트리 키


110

명령 프롬프트에서 Java로 작업을 시도 할 때이 오류가 발생합니다.

Error opening registry key 'Software\JavaSoft\Java Runtime Environment.3'
Error: could not find Java.dll
Error: could not find Java 2 Runtime Environment

며칠 전에 Java 디렉토리와 레지스트리를 삭제하는 데 어려움을 겪었습니다. 컴퓨터를 다시 시작했는데 Java가 여전히 잘 작동 한 다음 오늘 다시 시작했는데 이제이 오류가 발생합니다. 제거 및 재설치를 시도했지만 작동하지 않는 것 같습니다. 최신 Java JRE가 설치되어 있고 환경 변수에 경로가 설정되어 있습니다. 누구든지이 문제를 해결하는 방법에 대한 단서가 있습니까?


명령 프롬프트를 통해 Java를 제거하려고 시도했는데 제거 프로그램이 엉망이되었습니다. 그래서 수동으로 폴더를 삭제하고 그와 관련된 레지스트리를 삭제했습니다. 그 후 Java를 재부팅하고 다시 설치했으며 다음 재부팅 때까지 정상적으로 작동했습니다.
gFu

1
재부팅 후 다시 설치하려고하십니까? 어쩌면 세 번째는 매력이다
Atreys

예, 그래도 작동하지 않습니다.
gFu

다른 파일을 백업하고 컴퓨터를 다시 포맷 해 보셨습니까? 그 후에 Java를 새로 설치할 수 있습니다. 그러나이 방법은 과도 할 수 있습니다
Atreys 2011-06-15

1
어떻게 든 JDK가 이미 설치되어 있지만 런타임을 다운로드하여 특정 문제를 해결했습니다. 다른 사람에게 실제로 작동하는 경우를 대비하여 여기에 남겨 둡니다.
Dave는

답변:


185

확실히 당신은 어떤을 제거하는 것 java.exe, javaw.exe그리고 javaws.exe당신의 Windows\System32폴더와 당신이 x64 시스템 (윈 7 64 비트)이있는 경우도 같은 아래 작업을 수행 Windows\SysWOW64.

이러한 위치에서 찾을 수없는 경우에서 삭제 해보십시오 C:\ProgramData\Oracle\Java\javapath.


7
system32 폴더에서 "java"실행 파일을 제거한 후 JRE를 다시 설치해야했습니다. 그 후 문제가 해결되었습니다. 시작해 주셔서 감사합니다.
dangowans

1
보안 패치 설치 후이 오류로 인해 이클립스를 열 수 없었습니다. 감사합니다! 솔루션이 작동했습니다. 하지만 여기서 진짜 이유가 무엇인지 궁금합니다.
pvarma 2015

1
나를 위해 일했다! 감사합니다 ! 또한 JRE를 다시 설치해야했습니다.
kbonnelly

1
system32 폴더에있는 이러한 파일의 효과는 무엇입니까?
라비아 NAZ 칸

위에서 언급 한 실행 파일의 위치를 ​​보려면 "where java"를 실행하십시오. Mine where on C : \ Program Files (x86) \ Common Files \ Oracle \ Java \ javapath
Charis Moutafidis

85

Windows가 설치된 드라이브의 ProgramData 폴더에 " Oracle " 이라는 폴더가 있습니다. 폴더를 제거하십시오. 그것이 효과가 있기를 바랍니다. 제 경우에는 설치 드라이브가 C이고 경로는 C : \ ProgramData \ Oracle입니다.


@lese 환영합니다. 이것이 당신을 위해 일하고 있다는 소식을 들었습니다.
Shuvankar Paul

9
또는 C:\ProgramData\Oracle\Java\javapathWindows Path환경 변수 에서 제거
Gediminas Rimsa

@GediminasRimsa,이 경로 환경 변수가 모든 경우에 나타날지 확실하지 않습니다. 그러나 의견 주셔서 감사합니다.
Shuvankar Paul 2017

환경 변수에서 경로를 제거했지만 작동하려면 ProgramData 폴더에서 Oracle 폴더를 제거해야했습니다.
Irena Rich

@GediminasRimsa 사실 내 경우 ProgramData에서 오라클 폴더를 삭제 한 후 환경 변수를 제거했다
Alyosha_Karamazov

21

비슷한 문제가있었습니다. JDK7 업데이트 1을 설치했지만 사용할 수 없습니다 (아마도 JDK7을 설치 한 후 삭제 한 JRE6을 찾았 기 때문일 것입니다). JDK7 제거가 불가능했습니다. 해결책은 JRE 레지스트리 항목을 직접 추가하는 것이 었습니다.

[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment]
"CurrentVersion"="1.7"

[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\1.7]
"JavaHome"="C:\\Program Files\\Java\\jre7"
"RuntimeLib"="C:\\Program Files\\Java\\jre7\\bin\\client\\jvm.dll"

[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\1.7.0_01]
"JavaHome"="C:\\Program Files\\Java\\jre7"
"RuntimeLib"="C:\\Program Files\\Java\\jre7\\bin\\client\\jvm.dll"

위의 내용을 자신의 디렉토리와 버전으로 조정해야합니다.

이것이 도움이되지 않는다면 여전히 JavaRa http://raproducts.org/wordpress/가 있습니다 .


유감스럽게도, 이것은 우리가 "지정된 모듈을 찾을 수 없습니다"가 계속 윈도우 서버 2016에서 우리를 위해 일을하지 않았다
프락시 텔레스

유감입니다 ... 다른 모든 해결책을 시도하고 오류 메시지를 검색하세요 ... 해결책을 찾으면 여기에서 공유하거나 새 질문을 만드세요. 그러나 ... "지정된 모듈을 찾을 수 없습니다"는 원래 질문에서 논의 된 오류 메시지가 아닙니다.
Tilman Hausherr

6

시스템에서 java.exe, javaw.exe 및 javaws.exe를 제거했는지 확인하십시오.

  • x32 시스템 (Win XP 32 비트) Windows \ System32 폴더가있는 경우

  • x64 시스템 (Win 7 64 비트)이있는 경우 Windows \ SysWOW64 폴더에서도 동일한 작업을 수행합니다.


6

로컬 경로 C : \ ProgramData \ Oracle \ Java \ javapath에있는이 3 개의 파일을 삭제하십시오.

java.exe
javaw.exe
javaws.exe

이것은 나를 위해 문제를 해결했습니다. :)


4

확인할 위치는 3 곳입니다.

  1. 레지스트리 HKEY_LOCAL_MACHINE \ SOFTWARE \ JavaSoft \ Java Runtime Environment \ 1.8.0_xxx \ JavaHome
  2. Java 제어판-Java 탭-보기-경로
  3. 환경 변수-경로 ($ env : Path)

3 개 모두 정렬해야합니다 (여러 개의 전체가있는 경우 잘못된 항목을 제거하십시오).


4

Windows 10에서 방금 JDK를 설치했으며 버전을 확인할 때 이러한 오류가 발생했습니다. 에서 java(즉 java.exe, javaw.exejavaws.exe)로 시작하는 모든 실행 파일을 삭제해야 했습니다 C:\ProgramData\Oracle\Java\javapath. 그런 다음 삭제되면 JDK 설치 프로그램을 다시 실행하고 터미널 프로그램을 다시 시작하면 java -v작동합니다.


이 작업을 수행해야했지만 다시 설치할 필요가 없었습니다. exes를 삭제하면 문제가 해결되었습니다
Callat

Ditto, 해당 .exe를 삭제하면 문제가 해결되었습니다.
guymac

그것은 해당 파일을 삭제 중 한 후 윈도우 8에 고정 된 것
poovaraj

1

나는 이것을 주석으로 태그했지만 Tilman에게 감사하고 싶었습니다. PDFsam (PDF 분할 및 병합)을 사용하지 않으려 고했습니다.

시작시 JRE 1.6.0을 찾을 수 없다는 오류가 발생합니다. 32 비트와 64 비트 버전을 모두 가지고 있으며 각 브라우저의 Java 웹 사이트에서 잘 확인합니다.

JavaRa를 사용하는 것뿐만 아니라 제거 / 재설치 및 재부팅을 반복적으로 시도했습니다. 그런 행운은 없지만 여전히 갈 수 없습니다.

이 게시물을 읽은 후 레지스트리를 살펴 봤는데 ... \ SOFTWARE \ JavaSoft \ 키가 없었기 때문에 x86 버전을 가리키는 각각의 문자열 값을 추가했습니다 (PDFsam은 32 비트 프로그램입니다). 이것은 첫 번째 문제를 지나쳤지만 amd64 라이브러리에 대한 오류가 발생하여 시스템이 64 비트 버전을 실행하기를 원한다고 제안했습니다. 그래서 64 비트 JRE의 경로를 변경했고 이제 PDFsam이 작동합니다.

참고로-명령 프롬프트에서 javaw.exe를 실행할 수없는 경우 (시스템 경로에 필수 경로를 추가 한 후에도) Java 레지스트리 키를 검색하여 여기에 왔으며 앞서 언급 한 변경 사항으로도이 문제를 해결했습니다.


1

이전에 JDK 1.7이 있었고 JAVA JDK 1.8을 설치하고 JAVA_HOME 및 PATH 변수를 JAVA 1.8 버전으로 지정했을 때 이런 종류의 오류가 발생했습니다. 자바 버전을 찾으려고 할 때이 오류가 발생했습니다. 내 컴퓨터를 다시 시작했는데 작동합니다. 환경 변수를 수정 한 후 컴퓨터를 다시 시작해야하는 것 같습니다.


1

나는 똑 같았다 :

Error opening registry key 'Software\JavaSoft\Java Runtime Environment

Windows \ SysWOW64 지우기는 Win7에 도움이되지 않습니다.

제 경우에는 오프라인으로 JDK8을 설치하는 것이 도움이되었습니다 ( 링크에서 )


0

McAfee와 같은 바이러스 스캐너가 실행중인 경우 다음을 시도하십시오.

  1. 바이러스 스캐너 비활성화
  2. Java 제거 (제어판 / 프로그램 및 기능을 통해)
  3. Java 재설치 ( Java.com에서 )
  4. 바이러스 스캐너 다시 활성화

0

Java 제거 (제어판 / 프로그램 및 기능을 통해)

Java JRE 7 설치-> 오프라인 <-JAVA_HOME 및 경로 구성 = %JAVA_HOME%/bin;%PATH%


0

Windows 7을 사용하고 있습니다. PyCharm을 설치 한 후에도 동일한 문제가 발생했습니다. 나는 PyCharm에 만족하지 않았기 때문에 대신 Eclipse를 사용하기로 결정했습니다. 이것은 JDK에 문제가 있음을 발견했을 때입니다. Java.9.x를 사용했습니다. 그래서 나는 그것을 제거하고 최신 버전을 얻기로 결정했습니다 (내 당시에는 Java.11.x였습니다. 동일한 문제가 지속되었습니다. 위의 게시물에서 언급 한 대부분의 단계를 수행했습니다.-모든 java * .exe 파일 제거, -레지스트리에서 Java 관련 항목 제거-불필요한 모든 Java 폴더 정리 그러나 도움이되지는 않음 시스템에 손상된 Java 경로 이름을 참조하는 항목이 남아 있습니다.

실제로 해결 방법은 다음과 같습니다.-현재 가지고있는 JDK 버전을 제거했습니다. -문제가 발생하기 전에 가지고 있던 마지막 JDK 버전을 다시 설치했습니다.-해당 버전을 올바르게 제거하십시오. -최신 버전의 SDK를 설치합니다. ..

그게 다야 ..이 시점에서 모든 것이 정상으로 돌아왔다. Java.11.xx가 시스템 경로를 자동으로 수정하지 않는다는 점을 제외하고는 수동으로해야했다.


0

위의 여러 답변을 따랐고 문제가 해결되었습니다.

발행물:

Javac는 jdk에서 13에 있었지만 Java는 jre에서 1.8을 사용했기 때문에 Java에서 호환되지 않는 런타임 오류가 발생했습니다.

고치다:

  1. 제어판-> 프로그램에서 : 1.8 (Java 8 런타임)을 제거하고 다른 하나 (Java (TM) SE 개발 키트 13)를 건드리지 않았습니다.

  2. 다음에서 java.exe, javac.exe 및 javawc.exe 파일을 삭제했습니다. C : \ Windows \ system32 b. C : \ Windows \ SysWOW64 c. C : \ ProgramData \ Oracle \ Java \ javapath

  3. 환경 변수 JDK_HOME이 13을 가리키고 있었지만 JAVA_HOME이 1.8을 가리키고 있었으므로 JAVA_HOME도 C : \ Program Files \ Java \ jdk-13.0.1 인 13을 사용하도록 지시했습니다.

  4. 사용자 변수 및 시스템 변수 섹션 아래에 경로 변수가 있습니다. 사용자 변수 섹션의 경우 물리적 경로로 자동 변환되는 % JDK_HOME % 문자열을 추가했습니다. 시스템 변수의 경우 C : \ ProgramData \ Oracle \ Java \ javapath 경로를 삭제하고 C : \ Program Files \ Java \ jdk-13.0.1 \ bin을 추가했습니다.

이제 모두 좋습니다! 답변 해주신 모든 분들께 감사드립니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.