2012-03-05 141 views
7

Desde ayer, Eclipse no está actualizando los archivos .class de mi proyecto. Por ejemplo, el filename.java está actualizado, pero el archivo filename.class tiene una fecha de modificación de ayer. Solía ​​funcionar bien. ¿Por qué está pasando esto?¿Por qué Eclipse no actualiza las clases?

+1

¿Quizás de alguna manera su "creación automática" se haya desmarcado? intenta construir tus calsses con 'ctr + B' – dantuch

Respuesta

19

Pocas cosas que haría o doble verificación:

  1. proyecto> Limpio en el proyecto que está trabajando.
  2. Proyecto> Crear automáticamente: activado para que el código se vuelva a generar en el área de trabajo en los cambios guardados.
  3. Ventana> Preferencias y asegúrese de que sus instalada de JRE y compiladores son coincidentes versiones de Java
+0

¡Reparado! Muchas gracias por los consejos. – menemenemu

+0

# 3 fue la causa para mí. Versión actualizada de Java recientemente. – javaBean007

10

Yo sugeriría hacer lo siguiente

  1. Asegúrese constructor de Java es activa en el menú Project -> Properties -> Builders
  2. Limpiar el proyecto y volver a construirlo.
  3. Si eso no funciona, elimine los archivos .class manualmente mediante el Explorador de archivos y pruébelo nuevamente.
4

Los pasos que hemos seguido cuando me enfrenté a este problema fueron:

  1. Project > Clean el proyecto.
  2. Compruebe las propiedades del proyecto. Confirme que todas las dependencias (bibliotecas del sistema JRE y dependencias Maven) estén en buen estado. De lo contrario, actualice las dependencias de Maven o verifique si la ruta de compilación está configurada correctamente.
  3. Compruebe si Project > Build Automatically está encendido.
  4. Intenta ejecutar el proyecto; debería reconstruir adecuadamente el proyecto.
0

Tuve un problema similar cuando el JRE instalado y las versiones del compilador no coincidían.

Funcionó cuando seleccioné la misma versión del JRE como el compilador.

0

¿Quizás tiene archivos de clase anterior? Cuando agregué mi proyecto a Git, parece que los directorios de destino eran diferentes. Encontré archivos de clase duplicados en dos carpetas separadas: un conjunto era antiguo. Sin embargo, el conjunto antiguo parecía ser el conjunto de "goto" para Tomcat. Descubrí y resolví el problema buscando * .class en la carpeta del proyecto raíz y eliminando todos los resultados. Una vez que reconstruí el proyecto, funcionó a la perfección. (También me arregló el despliegue Exportar a Guerra que también parecía haber estado recogiendo los archivos de clases de edad.)

3

Asegúrese constructor de Java es activa en el menú Project -> Properties -> Builders

Gracias a @ege -akpinar, descubrí que por alguna razón el Java builder en la configuración de mi proyecto había desaparecido. Lamentablemente, no puede simplemente agregar el generador de nuevo. Para solucionarlo, deberá editar el archivo .project en la carpeta raíz de su proyecto.Asegúrese de que las siguientes líneas estén presentes en el archivo:

<buildSpec> 
    <buildCommand> 
     <name>org.eclipse.jdt.core.javabuilder</name> 
     <arguments> 
     </arguments> 
    </buildCommand> 
</buildSpec> 
<natures> 
    <nature>org.eclipse.jdt.core.javanature</nature> 
</natures> 

Para hacer el cambio, cerré Eclipse. Después revisé la preferencia Builders, limpié y construí el proyecto nuevamente. El cambio lo hizo funcionar de nuevo.

0

eliminar la carpeta de compilación de su proyecto, a continuación, limpiar el proyecto (asegúrese de que usted tiene la opción de Generar automáticamente habilitado)

0

Otro aspecto a considerar, abrir las ventanas marcador. Si tiene un problema de Java Build Path, Eclipse no los actualizará hasta que los resuelva.

0

Me he enfrentado el mismo problema. Y la solución es la versión del Proyecto Java y la Biblioteca del Sistema JRE.

Siga los pasos detallados a continuación:

  1. Proyecto -> Propiedades -> Java Compiler [comprobación de versión de Java por ejemplo 1,6]
  2. Proyecto -> Propiedades -> Java Build Path -> Sistema de Bibliotecas JRE [ comprobar la versión, por ejemplo java-6-oracle]
0

Tuve este problema (en Eclipse Neon). Tenía que comprobar la biblioteca del sistema JRE antes de que actualizaría las clases en la carpeta de destino:

enter image description here

Esperanza esta ayuda.

Cuestiones relacionadas