verificar descargar java

descargar - JRE 1.7 devuelve: java/lang/NoClassDefFoundError: java/lang/Object



java offline (27)

Al ejecutar cualquier aplicación java, o simplemente ''java'', el jvm falla:

Se produjo un error durante la inicialización de la VM
java / lang / NoClassDefFoundError: java / lang / Object

Aquí hay una lista de respuestas incorrectas :

  1. El directorio de inicio correcto de Java, incluido el directorio / bin, se encuentra en el PATH global

  2. JAVA_HOME está configurado correctamente

  3. Ejecutando el comando java -fullversion funciona

    $ java -fullversion ./java full version "1.7.0_05-b05"

  4. Los enlaces simbólicos en / usr / java apuntan a la correcta instalación de Java

  5. No instalé ningún Java ''predeterminado'' cuando creé el sistema

  6. java -version falla ... el mismo error que el anterior

  7. Emitir los comandos desde debajo de la estructura de directorios de la instalación de Java tampoco funciona

  8. Esto es 64 bits java para un 64 bits

¿Algunas ideas?


Acabo de hacer esto en Solaris y me encontré con este problema idéntico donde incluso "java -version" no funciona. Hay una razón por la cual las versiones de 64 bits de la distribución son MUCHO menores que las de 32 bits. De hecho, es como se indicó anteriormente:

En otras palabras, para obtener una instalación totalmente funcional de 64 bits, primero debe ejecutar la instalación de 32 bits y continuar con una instalación de 64 bits si tiene una máquina con capacidad de 64 bits ...

Así que ejecuté el instalador para el de 32 bits:

sh jdk-6u131-solaris-sparc.sh

Luego ejecuté el instalador para el 64-bit:

sh jdk-6u131-solaris-sparcv9.sh

Esto me da varios ejecutables Java para elegir:

  • $ encontrar. -name java
  • ./jdk1.6.0_131/db/demo/programs/scores/java
  • ./jdk1.6.0_131/db/demo/programs/vtis/java
  • ./jdk1.6.0_131/bin/java
  • ./jdk1.6.0_131/bin/sparcv9/java
  • ./jdk1.6.0_131/jre/bin/java
  • ./jdk1.6.0_131/jre/bin/sparcv9/java

Los sparcv9 java son las versiones de 64 bits y funcionan con "-version" cuando se instalan junto con el JDK de 32 bits.

  • ./jdk1.6.0_131/bin/sparcv9/java -version
  • versión de Java "1.6.0_131"
  • Java (TM) SE Runtime Environment (compilación 1.6.0_131-b32)
  • Java HotSpot (TM) 64-Bit Server VM (compilación 20.131-b32, modo mixto)

-Dan


Descargué el nuevo JDK hoy (1.8.0.73) comencé c:> java.exe y obtuve el infame:

Error occurred during initialization of VM java/lang/NoClassDefFoundError: java/lang/Object

Solo quería compartir mi solución de trabajo aquí.

Cuando ingresé en la carpeta jdk/bin , Java funcionaría bien, así que sabía que era la PATH . Establecí PATH en /jdk/bin en CMD para probarlo y funcionó.

Entonces, una de las carpetas en la PATH debe haber tenido java.exe que estaba causando el conflicto, pensé. Resultó que fue C:/>ProgramData/Oracle/Java/javapath que tiene enlaces simbólicos a los ejecutables.

java.exe apuntaba a jre/bin . El archivo estaba dañado, cuando comencé /jre/bin/java.exe - exactamente el mismo error. Bingo. Reinstalé JRE y el problema desapareció. Feliz codificación ...


Descubrí que este error ocurrió cuando extraje el archivo .rpm.

Luego eliminé esa carpeta y descargué jdk-7u79-linux-x64.tar.gz para Linux 64 y extraje el contenido de este archivo. También: exportar JAVA_HOME = / opt / java / jdk1.7.0_79 exportar JDK_HOME = / opt / java / jdk1.7.0_79 export PATH = $ {JAVA_HOME} / bin


El problema proviene de una instalación incorrecta de Java (por ejemplo, una instalación realizada sin derechos de administrador o simplemente descomprimiendo tools.zip).

Puede desinstalar, luego reinstalar Java con un instalador y / o más privilegios o pruebe lo siguiente:

Compruebe en su carpeta JDK los archivos *.pack en jre/lib y jre/lib/ext como rt.pack (la ubicación predeterminada es c:/nameof_jdk_folder/jre/lib para Microsoft Windows y /usr/java/lib para Unix / GNU Linux)

Esos archivos *.pack deben desempaquetar en archivos .jar usando este comando:

  • Para ventanas:

    %JAVA_HOME%/bin/unpack200 -r -v -l "" rt.pack rt.jar

  • Para * nix, una línea de comandos similar descomprimirá los archivos:

    cd /usr/java/lib

    /usr/bin/unpack200 rt.pack rt.jar

y repita ese paso con todos los archivos * .pack y reinicie su programa.


En Windows 10, me enfrentaba al mismo problema con JRE 1.8 (8u121).
Mecanografía

java -version

el prompt de cmd regresa

Error occurred during initialization of VM java/lang/NoClassDefFoundError: java/lang/Object

Todos los otros comandos, echo %JAVA_HOME% , echo %JRE_HOME% , echo %PATH% , java -fullversion funcionó bien.

Diríjase a las variables de entorno en el panel de administración del sistema, elimine de PATH el enlace C:/ProgramData/Oracle/Java/javapath , y asegúrese de haber configurado en PATH el enlace a C:/Program Files/Java Folder/bin .

Después de eso, verifique si en C:/Windows/System32 existe un archivo java.exe ; si es verdadero, elimine ese archivo.

Al escribir ahora java -version funciona bien.


En la ventana 10 ya hay una ruta presente en env como C:/>ProgramData/Oracle/Java/javapath que contiene enlaces simbólicos a los ejecutables.

Cuando instalo una nueva versión y la elimino de mi variable de entorno, mi proyecto comienza a mostrarla.

Estoy usando eclipse de oxígeno en la ventana 10

Para resolverlo: -

  1. Solo eliminé la ruta C:/>ProgramData/Oracle/Java/javapath de la variable de entorno y agregué nuevos env como JAVA_HOME y% JAVA_HOME% / bin en la ruta

  2. Reinstalo el jdk con privilegios de administrador (elimine la carpeta JRE anterior)

  3. Abra su proyecto eclipse> clic derecho> Ir a propiedades> En bibliotecas> Ahora elimine la biblioteca del sistema JRE> Haga clic en Agregar biblioteca> seleccione "Biblioteca del sistema JRE"> Haga clic en Siguiente> Seleccione "Espacio de trabajo predeterminado JRE (jre1.8.x_xxx)"> terminar

Mi problema está resuelto :) Espero que te ayude :)


En las ventanas esto funciona para mí

C:/jdk-8u162-windows-x64/jre/lib>../../bin/unpack200 -r -v rt.pack rt.jar


En mi caso, utilizo Windows 8.1 (jdk1.8.0_77 instalado), hice tres cosas:

  1. Eliminé jds anteriores
  2. Cambié el nombre del archivo java.exe dentro de C: / Windows / System32
  3. También eliminé C: / ProgramData / Oracle / Java / javapath en mi PATH (echo% PATH%)

y voila lo arreglaron!


Entonces, seguí intentando todo y finalmente parece que reinstalar java después de desinstalarlo solucionó mi problema.


Estaba enfrentando el mismo problema: se produjo un error durante la inicialización de VM java / lang / NoClassDefFoundError: java / lang / Object

Siga los pasos a continuación para resolver el problema:

Paso 1. Vaya a C: / Archivos de programa / y busque la carpeta Java.

Paso 2. Eliminar la carpeta C: / Archivos de programa / Java.

Paso 3. Descargue el nuevo Jdk para su versión de 32 bits / 64 bits de http://www.oracle.com/technetwork/java/javase/downloads/index.html

Paso 4. Instalar JDK

Paso 5: Ahora establece JAVA_HOME en "C: / Archivos de programa / Java / jdk1.8.0_91"

Paso 6: abre el símbolo del sistema e ingresa java -version.

Funciona.


Este problema ocurre cuando instala el JDK _uncompressing_ it en lugar de _executing_ it.

Por ejemplo:

unzip jdk-6u45-linux-x64.bin (wrong) sh ./jdk-6u45-linux-x64.bin (right)

En el primer escenario, las bibliotecas de tiempo de ejecución, como rt.jar, no se descomprimen automáticamente (por lo tanto, puede encontrar los archivos rt.pack, etc. en lugar de los .jar).



Me enfrenté al mismo problema, he instalado dos versiones de Java, por lo tanto, causó este problema. para confirmar esto, ve y haz clic en el icono de java en el panel de control si no se abre, entonces el problema es el mismo, solo ve y desinstala una versión. pedazo de pastel. Gracias.



No puede instalar solo 64 bits, primero debe instalar los 32 bits y luego agregar los componentes de 64 bits.

De java.com:

La instalación de JRE en un sistema de 64 bits que permite una JVM de 32 bits es un proceso de dos pasos: primero instale el JRE de 32 bits y luego instale el soporte adicional para las operaciones de 64 bits. Los nombres de archivo son los siguientes:


Otra respuesta podría ser usar el archivo tar.gz en su lugar en el caso de Linux. Parece que hay algo así también para la plataforma Solaris. De esta forma, todos los archivos ya estarán en el formato esperado y no habrá problemas de desembalaje.


Para java 8 @ * NIX OS:

Del directorio "<jdk1.8_root>/jre/lib" (Para mí: /usr/java/jdk1.8.0_05/jre/lib)

Correr:

../../bin/unpack200 rt.pack rt.jar ../../bin/unpack200 jsse.pack jsse.rar ../../bin/unpack200 charsets.pack charsets.jar

(Puede que no pueda usar los problemas de la versión de causa del paquete unpack200 del sistema). Este unpack200 está en el directorio java 8 (para mí: /usr/java/jdk1.8.0_05/bin)

Benedek


Parece que para una arquitectura de 64 bits debe instalar tanto la versión de 32 bits como la versión de 64 bits de jre (los archivos independientes de arquitectura como rt.jar se distribuyen solo en la versión de 32 bits).

Recuerde entonces prestar atención para incluir el ejecutable Java correcto en la variable de entorno PATH global.


Probablemente le falte un archivo llamado rt.jar en su instalación que tenga el archivo de clase para java.lang.Object. Verifique sus archivos de instalación, etc.

En particular, tenga en cuenta que un intsaller de 64 bits superpone (o instala "al lado") una instalación existente de 32 bits. En otras palabras, para obtener una instalación totalmente funcional de 64 bits, primero debe ejecutar la instalación de 32 bits y continuar con una instalación de 64 bits si tiene una máquina con capacidad de 64 bits ...

Si, en cambio, solo hace una instalación de 64 bits, faltarán ciertos archivos en la instalación y obtendrá errores como el de arriba.


Si instala una versión de 64 bits sin instalar primero 32 bits, este error ocurrirá a pesar de solucionar todos los otros problemas. Tengo una nueva máquina Dell i7 de 64 bits con Windows 10 Pro con Java 8u71. Después de haber agregado mi% path% y% classpath% a las variables de entorno y probar varias otras correcciones, desinstalar 64 bits, instalar 32 bits y luego reinstalarlo de 64 bits.

Algunos de los problemas, como no tener sus archivos desempaquetados, etc., que se han mencionado como posibles causas pueden seguir causando problemas, pero si no lo hace, las otras correcciones no funcionarán.


Solo instale el jre nuevamente . Simplemente resolvió mi problema. (El lote de inicio de SonarQube comenzó a dar este error después de instalar jdk)


Solución rápida que funcionó para mí:

for file in $(find "$JAVA_HOME" -name "*pack") do unpack200 "${file}" "${test_file/%pack/jar}"; done


Tengo un problema con las instalaciones de Linux x86_64 con JDK 1.7.0_40 i586. Descubrí que el problema es que las rpm no pueden descomprimir los archivos jar, como lo menciona Rigg802 (aunque rpm completa el éxito de marcado):

Unpacking JAR files... rt.jar... /var/tmp/rpm-tmp.zLzkkb: /usr/java/jdk1.7.0_40/bin/unpack200: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory Error: unpack could not create JAR file: /usr/java/jdk1.7.0_40/jre/lib/rt.jar

File /lib/ld-linux.so.2 es provisto por glibc-2.12-1.107.el6_4.4. i686 que no está entre rpm deps de jdk rpm.

Oracle JDK rpm también requiere versiones de 32 bits de libgcc-4.4.7-3.el6. i686 para ser instalado

Por lo tanto, la solución es instalar primero glibc-2.12-1.107.el6_4.4.i686 y libgcc-4.4.7-3.el6.i686.


Tuve el mismo problema recientemente. En mi caso, mi máquina con Windows 7 descargó automáticamente Java y agregó C:/ProgramData/Oracle/Java/javapath al principio de mi variable de entorno de ruta, lo que dañó mi Java. Una vez que me deshice de eso del camino, funcionó.


Vaya al panel de control, desinstale las cosas relacionadas con Java (cierre el eclipse si está abierto), luego vuelva a instalar Java y abra Eclipse, limpie los proyectos.


si haces "chmod u + rx" en el binario java y lo ejecutas, se descomprimirán los archivos jar y podrás hacer una versión java sin errores de tiempo de ejecución


Solución rápida para personas impacientes;) En máquinas con Windows , intente esto: vaya al directorio C:/Windows/System32 y elimine java.exe (o cambie el nombre a algo así como java.exe.old ).

Como mínimo 1.6, no debería haber un java.exe en el directorio de Windows. Si hay, es un remanente de algo.

Un poco más de lectura:

¡Estoy realmente sorprendido de que una pregunta de 2012 no tenga una respuesta aprobada todavía y que en realidad haya tenido el mismo problema en 2015 en mi sistema operativo Win 7 de 32 bits!

Entonces, ¿qué pasó?

Básicamente, todo estaba funcionando bien, descargué la base de datos H2 y cuando traté de iniciar la H2 Console (Command Line) obtuve:

Error occurred during initialization of VM java/lang/NoClassDefFoundError: java/lang/Object

Encontré esta pregunta y pude confirmar los mismos síntomas:

JAVA_HOME está configurado correctamente:

echo %JAVA_HOME% C:/Program Files/Java/jdk1.6.0_26

java -version falla, mientras que java --fullversion funciona bien:

java -fullversion java full version "1.6.0_45-b06"

SOLUCIÓN: Vaya al directorio C:/Windows/System32 y elimine (en realidad java.exe ) el archivo java.exe !!!!

Ahora, obtengo:

java -version java version "1.6.0_26" Java(TM) SE Runtime Environment (build 1.6.0_26-b03) Java HotSpot(TM) Client VM (build 20.1-b02, mixed mode, sharing)

¡y la H2 Console (Command Line) funciona bien!

Los créditos van al último post de este foro: https://bukkit.org/threads/java-lang-noclassdeffounderror-java-lang-object.70450/