java.lang.RuntimeException: Código fuente no compilable: ¿qué puede causar esto?
Este error es simplemente extraño, mi código se compila bien, puedo ver que no hay problemas con él, pero este error acaba de aparecer. Intenté reiniciar NetBeans y no hay información de excepción adicional.
¿Qué puede causar esto?
Si se trata de Netbeans, intente desmarcar la configuración "Compilar al guardar" en las propiedades del proyecto (Compilar -> Compilación). Esto es lo único que me ayudó en una situación similar.
Supongo que estás usando un IDE (como Netbeans) que te permite ejecutar el código incluso si ciertas clases no son compilables. Durante el tiempo de ejecución de la aplicación, si accede a esta clase, se producirá esta excepción.
Se debe a que NetBeans retiene parte del código fuente antiguo y/o compilado en su caché y no se da cuenta de que, por ejemplo, algunas de las dependencias del código (es decir, paquetes referenciados) han cambiado y que sería necesario actualizar/recompilar el archivo correctamente. .
La solución es forzar esa actualización mediante:
a) localizar y editar el archivo fuente infractor para forzar su recompilación (por ejemplo, agregar una línea ficticia, guardarla, eliminarla, guardarla nuevamente),
b) hacer una compilación limpia (a veces funcionará, otras no),
c) deshabilitar " Compile al guardar" (no recomendado, ya que puede hacer que el uso del IDE sea un PITA real), o
d) simplemente elimine el caché de NetBeans a mano, forzando la recompilación.
En cuanto a cómo eliminar el caché:
Si está utilizando una versión antigua de NetBeans:
- elimine todo lo relacionado con su proyecto en
.netbeans/6.9/var/cache/index/
(reemplace 6.9 con su versión).
Si estás usando uno más nuevo:
- elimine todo lo relacionado con su proyecto en
AppData/Local/NetBeans/Cache/8.1/index/
(reemplace 8.1 con su versión).
Los caminos pueden variar un poco, por ejemplo, en diferentes plataformas, pero la idea sigue siendo la misma.
También recibí el mismo error, hice una compilación limpia y funcionó.