2011-01-31 32 views
14

He vuelto recientemente a un proyecto después de no usarlo durante un par de semanas. El proyecto no se creó en Eclipse y se importó, y no hay ningún archivo '.classpath' en el espacio de trabajo del proyecto.Falta un archivo .classpath en el proyecto Eclipse

Estoy seguro de que anteriormente agregué con éxito nuevos archivos .jar simplemente haciendo clic con el botón derecho en ellos y yendo a 'Añadir a la ruta de compilación', pero gracias a un error no relacionado tuve que volver a agregar los archivos a la ruta de compilación. y ahora cada vez que intento añadir un nuevo archivo .jar me sale el siguiente error:

Error while adding a library 

Reason: 
Could not write file C:\Users\Charles\workspace\hive\.classpath 

O, si intento agregar un archivo mediante Configurar construir camino, me sale el siguiente error:

'Setting build path' has encountered a problem. 

Could not write file: 
C:\Users\Charles\workspace\hive\.classpath 

Tengo versiones anteriores de este proyecto antes de agregar archivos .jar, y no hay .classpa El archivo th para ninguno de ellos tampoco, así que no lo borré accidentalmente en ningún momento.

Si alguien puede ayudarme en algo, estaría muy agradecido (necesito desesperadamente agregar estos archivos .jar para poder hacer un trabajo real).

Lo que más me molesta es que estoy seguro de que funcionó antes, pero he tratado de hacer lo mismo en versiones anteriores del proyecto y siempre estoy obteniendo el mismo error ahora.

+2

Parece un problema de permiso de os os. ¿Qué sistema de operación estás usando? ¿Está oculto .classpath? Si está usando mac, le sugiero que use la terminal y descubra el permiso dentro de la carpeta de su proyecto. Si usa Windows, compruebe si la opción visible de archivos ocultos está configurada como verdadera y use alguna utilidad como desbloquear para ver cómo bloquear programas en la carpeta. –

+2

¿Ha comprobado si el archivo es de solo lectura? – fmucar

+0

Estaba oculto. Muchas gracias. Me siento un poco idiota, pero tengo curiosidad por saber por qué funcionó anteriormente, y de repente decidí no trabajar (el archivo DEFINITIVAMENTE siempre estaba oculto). ¿Alguien puede aclarar esto? Muchas gracias por sus respuestas rápidas chicos, muy útiles. – tre

Respuesta

4

El archivo .classpath en eclipse es un archivo de configuración (en XML) que almacena las propiedades del classpath del proyecto. Si no se puede escribir, tal vez sea un problema de acceso. Haga clic derecho en el archivo en el explorador de Windows y verifique en la pestaña de seguridad para ver si tiene permisos de escritura. Es posible que deba ejecutar Eclipse como administrador.

+0

Aunque es poco probable, pero algunos procesos también pueden bloquearlo. – biziclop

+0

Pero el archivo '.classpath' almacena las propiedades de la ruta de compilación ... ¿no? –

46

Tuve el mismo problema. Acababa de configurar una nueva PC, transferí mis proyectos a la nueva PC, hice clic en el directorio del espacio de trabajo y cambié el permiso para que yo (el "yo" en mi nueva PC) tuviera todos los archivos en todos los subdirectorios . Sin embargo, incluso después de hacer esto, eclipse no pudo escribir en los archivos .classpath. Verifiqué que podía escribirles usando el bloc de notas, y eso funcionó bien. También verifiqué que el O/S sabía que yo era realmente el dueño, pero no ayudó. También intenté ejecutar como administrador, pero eso tampoco ayudó.

Luego encontré este enlace: http://blog.ryanrampersad.com/2010/03/03/setting-build-path-has-encountered-a-problem-in-eclipse/, que indica que al copiar archivos en una máquina con Windows 7, Windows puede establecer el atributo 'oculto' en el archivo, y cuando esto sucede, eclipse no puede funcionar con él. Hice una búsqueda de archivos desde el directorio del espacio de trabajo, buscando '.project' (y subsecuentemente '. Classpath'), y seleccioné todos los archivos, hice clic derecho y desmarqué el atributo 'hidden'. Esto solucionó mi problema.

+1

Genial. Esto funcionó para mí. – Jon

+0

¿Esto simplemente sucede porque el nombre de archivo ".classpath" no está en las reglas de nombre de archivo estándar de Windows? –

+0

funcionó para mí. Asegúrese de seleccionar todos los archivos en la carpeta del proyecto y desmarque la bandera oculta. – Mercurial

0

Vaya a la carpeta del proyecto y elimine la propiedad oculta del archivo ".classpath". Espero que esto ayude. Gracias.

2

Vaya a su proyecto en WorkSpace. Y luego cambie el atributo de sus archivos de oculto.

Además, abra el proyecto y luego límpielo.

Esto debería funcionar.

0

Haga clic derecho en Proyecto >> Fuente >> Formato - ¡trabajó para mí!

0

La siguiente solución funcionó para mí.

Vaya a la carpeta del proyecto -> Haga clic con el botón derecho en la carpeta -> Propiedades -> En la pestaña general, desactive la opción atributo (último campo), solo lectura (solo se aplica a esta carpeta).

Luego intente agregar frascos en eclipse.

Esperanza esto ayuda

-1

Como doc_180 mencionadas, el .classpath estarían ocultos. Haga clic derecho> Propiedades y mostrar el archivo, debería estar bien.

0

Acabo de tener el mismo problema después de intentar crear mi vista en una nueva PC. La causa del problema para mí fue que el archivo .classpath se marcó como de solo lectura, por el motivo que sea. Para resolver esto, hice lo siguiente:

Vaya al directorio del espacio de trabajo -> Carpeta Java Source -> Directorio del proyecto -> haga clic derecho en .classpath y seleccione Propiedades de la lista -> desmarque 'Solo lectura' y/o casilla (s) de atributo 'Oculto' -> Haga clic en el botón 'Aplicar'.

0

Tuve un problema similar después de cambiar mi proyecto a Gradle. Cuando hice clic derecho en javaw.exe-> Propiedades en la vista 'depuración', vi que el classpath estaba (en su mayoría) ausente, por ejemplo, el directorio 'bin' que contenía las clases no estaba allí.

La solución para mí fue simplemente eliminar la 'configuración de depuración de ejecución' y crear una nueva. Después de eso, se incluyó el classpath y pude ejecutarlo desde Eclipse nuevamente.

Espero que esto ayude a alguien por ahí.

Cuestiones relacionadas