He estado trabajando en un proyecto de Java por año. Mi código había estado funcionando bien durante meses. Hace unos días, actualicé el Java SDK a la versión más reciente 1.6.0_26 en mi Mac (Snow Leopard 10.6.8). Después de la actualización, ocurre algo muy extraño. Cuando corro algunas de las clases, me sale este error:Acceso a la memoria no válida de la ubicación en Java
acceso a memoria no válida de la ubicación 0x202 0x202 = RIP
Pero, si les funciono con -Xint (interpretada) funcionan, pero el trabajo lento multa. Obtengo ese problema en las clases donde uso operadores bit a bit (bitboards para el juego Othello). No puedo poner ningún código aquí porque no obtengo un error, excepción o algo similar. Acabo de recibir ese mensaje molesto.
¿Es normal que el código no se ejecute sin -Xint pero funciona con él? ¿Que debería hacer?
Gracias de antemano
muy extraño. ¿Esto se muestra como una excepción? ¿Un error de compilación? ¿Algo más? ¿Hay más texto en el mensaje de error? ¿Indica un número de línea?¿El programa sigue funcionando o explota? ¿Sucede cada vez que ejecutas tu código sin -Xint? ¿Estás usando Swing para tu GUI? ¿Hay algún potencial para un problema de concurrencia? –
No se muestra como una excepción, solo un mensaje. Compila bien. Ese es el único mensaje, a veces muestra una dirección de memoria diferente, pero solo el mismo mensaje. El programa deja de funcionar. No estoy usando Swing, pero estoy usando hilos. Podría ser un problema de concurrencia, pero ¿por qué no funciona cuando se ejecuta como se interpreta? Esa es la parte molesta. –
Parece un error en la máquina virtual. Trate de aislar el problema cortando su programa (elimine las cosas que cree que no son esenciales, si no vuelve a ocurrir, deshaga y pruebe con otra parte. Si todavía ocurre, repita). Luego envíe un error a quien haya producido su JRE. –