Por fin luego de mucho luchar ya dimos con la respuesta de esta obstáculo que ciertos los lectores de nuestro sitio tienen. Si quieres aportar algún dato no dejes de compartir tu información.
Solución:
Haré algunas sugerencias, estas están en orden de facilidad. Si está empeñado en descubrir qué complemento era y unirse a ese proyecto para solucionarlo o enviar un correo de odio a una lista de soporte, entonces probablemente desee pasar a “Perfilarlo” a continuación.
Revisa la consola
Si inicia eclipse desde la línea de comando (es decir, escriba eclipse
) entonces, si se lanzan excepciones, las verá aquí. A veces, la lentitud puede deberse a que un complemento falla repetidamente y arroja muchas excepciones. A veces es algo que puedes arreglar, a veces tienes que eliminar ese complemento.
Aumenta tu memoria RAM
Nos encanta GC pero provoca una muerte lenta. La belleza de GC es que su programa nunca se queda sin memoria, porque el usuario cree que se ha bloqueado y lo mata antes de que realmente se quede sin RAM. Por lo tanto, intente aumentar PermGen y otras configuraciones de memoria de Eclipse: http://wiki.Eclipse.org/FAQ_How_do_I_increase_the_heap_size_disponible_to_Eclipse%3F
Crear un nuevo espacio de trabajo
A menudo me doy por vencido y simplemente elimino/recreo todo el espacio de trabajo. Hay tantos complementos que pueden ser un verdadero desafío para depurar y, a menudo, son basura en el directorio del espacio de trabajo que hace que las cosas se rompan.
Mantenga Eclipse delgado
Si quiero mantener Eclipse realmente ágil, crearé una instalación para un solo proyecto y agregaré solo los complementos necesarios. Si puede comenzar desde la versión que no es EE, ya está mucho menos hinchado.
Perfilarlo
El VisualVM que se incluye con Sun JDK (probablemente ya lo tenga instalado) se puede usar para ver qué clases consumen la mayor parte del tiempo del procesador y qué objetos ocupan memoria (y qué los creó).
Inicie VisualVM y debería ver Eclipse en la lista de Aplicaciones. Haga clic derecho en la entrada de Eclipse y “Abrir” Eclipse dentro de VisualVM. Ahora puede adjuntar un generador de perfiles y ver qué clases se están utilizando.
La creación de perfiles ralentizará todo (¡mucho!), por lo que es posible que desee comenzar con el ejemplo más pequeño posible, o ser extremadamente paciente. Especialmente al comienzo de la creación de perfiles, tomará mucho tiempo ya que ‘instrumenta’ las clases (inyectando bytecode para permitir la creación de perfiles).
Una forma de saber qué está haciendo Eclipse al habilitar la depuración. Aquí hay información sobre la depuración de los constructores de Eclipse, sin embargo, el proceso es genérico, es decir, debe iniciar Eclipse desde la línea de comandos. $eclipsec –depuración > log.txt y habilite la depuración para ciertos complementos usando el .opciones expediente. Supongo que querrá mirar un poco más de cerca las operaciones de ‘actualización’ y ‘construcción’.
Otra opción sería utilizar una herramienta, por ejemplo, MAT (Memory Analyzer), YourKit. Encuentro que YourKit es bastante útil, por ejemplo, podría habilitar la creación de perfiles de CPU en YourKit y luego realizar una acción en Eclipse que cree que lleva mucho tiempo. Una vez que se completa la acción, puede tomar una instantánea y hacer un análisis en YourKit. Una advertencia es que adjuntar el generador de perfiles YourKit a Eclipse ralentizará aún más a Eclipse.
Dicho esto, más de 150 proyectos en un espacio de trabajo es demasiado. Si es posible, probablemente debería configurar un espacio de trabajo por componente con el resto de los complementos en una plataforma de destino. Todos sus espacios de trabajo pueden compartir una única plataforma de destino. Con más de 150 proyectos, la creación de un espacio de trabajo completo por sí sola puede llevar bastante tiempo, ya que se debe generar una gran cantidad de archivos de clase, lo que significa una gran cantidad de E/S de disco, y Eclipse no puede ayudarlo allí, solo un SSD puede hacerlo 🙂
Te invitamos a proteger nuestro quehacer mostrando un comentario o dejando una puntuación te damos las gracias.