Las eclipse.iniconfiguraciones nuevas y mejoradas para Helios 3.6 están aquí (a continuación, en una nueva respuesta): stackoverflow.com/questions/142357/…
VonC
66
Es sorprendente que la pregunta cerrada que no constructiva tiene una clasificación tan alta ...
Bancer
1
Esta pregunta se hizo cuando la respuesta más reciente a una pregunta como esta en 2008 fue eclipsezone.com/eclipse/forums/t20732.html . El conjunto de respuestas ha crecido porque se han lanzado nuevas versiones de eclipse y java, las actualizaciones posteriores han mantenido las respuestas frescas. Al cerrar la pregunta, las respuestas se volverán obsoletas. La única manera que puedo pensar para reformular esta pregunta sería para que sea la versión específica, que creo que es peor, ya que causaría múltiples preguntas de respuesta básicamente el mismo problema
Craig Angus
10
De acuerdo, cerrar preguntas como esta es una locura, una locura que te digo, ¡preguntas como esta son las más útiles e interesantes del sitio!
Luigi Plinge
3
Según el motivo del cierre, "Esperamos que las respuestas generalmente involucren hechos, referencias o experiencia específica". Creo que cerrar esta pregunta es una exageración. Tengamos cuidado al usar los poderes de censura. Yo diría que en caso de duda, es mejor "dejar que el conocimiento sea libre" y abierto.
luiscolorado
Respuestas:
315
Es esa época del año otra vez: "eclipse.ini take 3" ¡la configuración devuelve el golpe!
y utilizando Sun-Oracle JVM 1.6u21 b7 , lanzado el 27 de julio (algunas opciones de propiedad de Sun pueden estar involucradas)
( por "optimizado", quiero decir que puedo ejecutar un Eclipse completo en nuestra estación de trabajo en el trabajo, algunos viejos P4 de 2002 con 2Go RAM y XPSp3. Pero también he probado esas mismas configuraciones en Windows7 )
Eclipse.ini
ADVERTENCIA : para plataformas que no sean de Windows, use la opción de propiedad de Sun en -XX:MaxPermSizelugar de la opción de propiedad de Eclipse --launcher.XXMaxPermSize.
Es decir: a menos que esté utilizando la última versión 7 de jdk6u21 . Vea la sección de Oracle a continuación.
Nota:
Adapte el p2.reconciler.dropins.directorya un directorio externo de su elección.
Ver esta respuesta SO . La idea es poder colocar nuevos complementos en un directorio independientemente de cualquier instalación de Eclipse.
Las siguientes secciones detallan lo que hay en este eclipse.iniarchivo.
El temido Oracle JVM 1.6u21 (precompilación 7) y Eclipse se bloquean
Andrew Niefer me alertó sobre esta situación y escribió una publicación de blog sobre un argumento vm no estándar ( -XX:MaxPermSize) y puede hacer que los vms de otros proveedores no se inicien en absoluto.
Pero la versión eclipse de esa opción ( --launcher.XXMaxPermSize) no funciona con el nuevo JDK (6u21, a menos que esté utilizando la compilación 7 7u de 6u21, ver más abajo).
los finalla solución está en Eclipse Wiki , y solo para Helios en Windows con 6u21 pre build 7 :
Eso es. No hay ajustes para ajustar aquí (de nuevo, solo para Helios en Windows con una versión 6u21 pre build 7 ).
Para la plataforma que no sea Windows, necesita volver a la opción pertenece a Sun -XX:MaxPermSize.
Actualización u21b7, 27 de julio : Oracle ha retrocedido el cambio para la próxima versión de Java 6 y no lo implementará nuevamente hasta JDK 7 .
Si usa jdk6u21 build 7 , puede volver a la --launcher.XXMaxPermSize(opción eclipse) en lugar de -XX:MaxPermSize(la opción no estándar).
La detección automáticaeclipse.exeSun Microsystems que se produce en la cuña del iniciador C seguirá buscando la cadena " ", pero con 6u21b7, ahora funcionará nuevamente.
Por ahora, todavía mantengo la -XX:MaxPermSizeversión (porque no tengo idea de cuándo todos lanzarán eclipse el JDK correcto ).
Implícita `-startup` y` --launcher.library`
Contrariamente a la configuración anterior, la ruta exacta para esos módulos ya no está configurada, lo cual es conveniente ya que puede variar entre diferentes versiones de Eclipse 3.6.x:
inicio: si no se especifica, el ejecutable buscará en el directorio de complementos el org.eclipse.equinox.launcherpaquete con la versión más alta.
launcher.library: si no se especifica, el ejecutable busca en el pluginsdirectorio el org.eclipse.equinox.launcher.[platform]fragmento apropiado con la versión más alta y usa la biblioteca compartida nombrada eclipse_*en su interior.
Utilice JDK6
El JDK6 ahora se requiere explícitamente para lanzar Eclipse:
-Dosgi.requiredJavaVersion = 1.6
Esta pregunta SO informa una incidencia positiva para el desarrollo en Mac OS.
+ DesbloquearVMOptions experimentales
Las siguientes opciones son parte de algunas de las opciones experimentales de Sun JVM.
Esto le dice al lanzador que si se llama con una línea de comando que solo contiene argumentos que no comienzan con " -", entonces esos argumentos deben tratarse como si siguieran " --launcher.openFile".
eclipse myFile.txt
Este es el tipo de línea de comando que recibirá el iniciador en Windows cuando haga doble clic en un archivo asociado con eclipse, o seleccione archivos y elija " Open With" o " Send To" Eclipse.
Las rutas relativas se resolverán primero con el directorio de trabajo actual y segundo con el directorio del programa eclipse.
Vea el error 301033 para referencia. Originalmente error 4922 (octubre de 2001, corregido 9 años después).
p2 y la solicitud de diálogo sin firmar
Si está cansado de este cuadro de diálogo durante la instalación de sus muchos complementos:
Quiero decir que la investigación de seguridad respalda el hecho de que menos indicaciones son mejores.
Las personas ignoran las cosas que aparecen en el flujo de algo que quieren hacer.
Para 3.6, no debemos mostrar advertencias en el medio del flujo; no importa cuánto simplifiquemos, las personas simplemente las ignorarán.
En cambio, deberíamos recopilar todos los problemas, no instalar esos paquetes con problemas y, en su lugar, llevar al usuario a un punto en el flujo de trabajo donde pueda solucionarlo: agregue confianza, configure la política de seguridad de manera más flexible, etc. Esto se llama 'seguro puesta en escena ' .
Esas opciones no están directamente en lo eclipse.inianterior, pero pueden ser útiles si es necesario.
El problema `user.home` en Windows7
Cuando se inicia eclipse, leerá su archivo de almacén de claves (donde se guardan las contraseñas), un archivo ubicado en user.home.
Si por alguna razón eso user.homeno se resuelve adecuadamente en una ruta de compromiso completo, Eclipse no se iniciará.
Inicialmente planteado en esta pregunta SO , si experimenta esto, debe redefinir el archivo de almacén de claves en una ruta explícita (no más user.home para resolver al principio)
Espere, hay más de un archivo de configuración en Eclipse.
si agrega a su eclipse.iniopción:
-debug
, habilita el modo de depuración y Eclipse buscará otro archivo de configuración: un .optionsarchivo donde puede especificar algunas opciones de OSGI.
Y eso es genial cuando agrega nuevos complementos a través de la carpeta dropins.
Agregue en su archivo .options la siguiente configuración, como se describe en esta publicación de blog " Diagnóstico de Dropins " :
P2 le informará qué paquetes se encontraron en la dropins/carpeta, qué solicitud se generó y cuál es el plan de instalación. Tal vez no sea una explicación detallada de lo que realmente sucedió y lo que salió mal, pero debería brindarle información sólida sobre dónde comenzar:
fue tu paquete en el plan?
¿Fue un problema de instalación (falla P2)
o tal vez simplemente no es óptimo incluir su función?
En Galileo (también conocido como Eclipse 3.5), JDT comenzó a resolver el classpath manifiesto en las bibliotecas agregadas a la ruta de compilación del proyecto. Esto funcionó si la biblioteca se agregó a la ruta de compilación del proyecto directamente o mediante un contenedor de classpath, como la instalación de biblioteca de usuario proporcionada por JDT o una implementada por un tercero.
En Helios, este comportamiento se cambió para excluir los contenedores de classpath de la resolución de classpath manifiesta.
Eso significa que algunos de sus proyectos ya no pueden compilarse en Helios.
Si desea volver al comportamiento de Galileo, agregue:
Según este enlace, oracle.com/technetwork/java/javase/gc-tuning-6-140523.html#icms , debe tener -XX: + UseConcMarkSweepGC para usar -XX: + CMSIncrementalMode. Eso falta en tu ejemplo anterior. No necesitaríamos CMSIncrementalMode en caso de que usemos G1 GC, ¿estoy en lo cierto?
RuntimeException
1
Hola, G1GC es un desastre en una Mac. Se come toda la máquina, lo que requiere un reinicio.
bmargulies
44
@VonC: -XX:CompileThreshold=5causa ralentizaciones HORRENDAS para mí. ¡Deshacerme de esta opción solo reduce mi tiempo de inicio de Eclipse a 17 segundos desde> 1 minuto! Sin mencionar cuán terriblemente lento fue el IDE en general. Ver este enlace
TrinitronX
3
@TrinitronX: (y en realidad todos), -XX:CompileThreshold=5es un valor muy bajo (predeterminado = 10000). Este valor representa el número de invocaciones / ramas de métodos antes de compilarlo. Un valor demasiado bajo hará que su CodeCache se llene prematuramente y la consola puede informar: CodeCache is full. Compiler has been disabledUna vez que el compilador esté desactivado, notará lentitud en la aplicación. Hay dos formas de solucionar esto: 1. Use -XX:CompileThreshold=1000(ajuste este número) o 2. Intente aumentar el tamaño de la caché de código usando -XX:ReservedCodeCacheSize=64m(el doble de los 32 m predeterminados)
Drupad Panchal
44
para linux use /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/i386/client/libjvm.so para ubicación de jvm
r15habh
76
Configuración de Eclipse Galileo 3.5 y 3.5.1
Actualmente (noviembre de 2009), estoy probando con jdk6 update 17 el siguiente conjunto de opciones de configuración (con Galileo - eclipse 3.5.x, ver abajo para 3.4 o superior para Helios 3.6.x ):
(por supuesto, adaptar las rutas relativas presente en este eclipse.ini a las rutas correctas para su configuración)
Nota: para eclipse3.5 , reemplace startupy alineelauncher.library por:
Galileo admite rutas totalmente relativas para el espacio de trabajo o VM (evite tener que modificarlas de una instalación de eclipse a otra, si, por supuesto, su JVM y su espacio de trabajo permanecen iguales)
Antes, esas rutas relativas se reescribieron en absolutas cuando se lanzó eclipse ...
También puede copiar el directorio JRE de una instalación Java JDK dentro de su directorio eclipse
Advertencias
Hubo un error con puntos de interrupción ignorados en realidad relacionados con el JDK.
Utilice JDK6u16 o más reciente para iniciar eclipse (puede definir tantos JDK que desee compilar dentro de eclipse: no es porque inicie un eclipse con JDK6 que tendrá que compilar con ese mismo JDK).
Eclipse 3.3 admite un nuevo argumento para el lanzador: --launcher.XXMaxPermSize.
Si la VM que se está utilizando es una VM de Sun y aún no hay un -XX:MaxPermSize=argumento de VM, entonces el iniciador se agregará automáticamente -XX:MaxPermSize=256ma la lista de argumentos de VM que se están utilizando.
El lanzador 3.3 solo es capaz de identificar máquinas virtuales de Sun en Windows.
No todos los vms aceptan el -XX:MaxPermSizeargumento, por eso se pasa de esta manera. Puede haber (o no) problemas para identificar sun vms.
Nota: Eclipse 3.3.1 tiene un error en el que el iniciador no puede detectar una máquina virtual de Sun y, por lo tanto, no utiliza el tamaño correcto de PermGen. Parece que esto también pudo haber sido un error conocido en Mac OS X para 3.3.0 . Si está utilizando cualquiera de estas combinaciones de plataformas, agregue el -XXindicador al eclipse.inidescrito anteriormente.
Notas:
la 384mlínea " " se traduce en la parte " =384m" del argumento de VM, si la VM distingue entre mayúsculas y minúsculas en " m", entonces también lo es este argumento.
el --launcher.prefijo " ", esto especifica que el argumento es consumido por el iniciador en sí y se agregó a los argumentos específicos del iniciador para evitar colisiones de nombres con argumentos de la aplicación. (Otros ejemplos son --launcher.library, --launcher.suppressErrors)
La -vmargs -XX:MaxPermSize=384mparte es el argumento pasado directamente a la VM, pasando por alto el iniciador por completo y no se utiliza ninguna verificación del proveedor de la VM.
Tuve un par de problemas con esto para la última versión de eclipse 3.5x64: --launcher.library plugins / org.eclipse.equinox.launcher.win32.win32.x86_64_1.0.200.v20090519 -startup plugins / org.eclipse.equinox.launcher_1 .0.200.v20090520.jar también tuve que usar un jdk JAVA_HOME / bin / javaw, para el complemento m2eclipse. De lo contrario, esto es una locura increíble.
Nathan Feger
¿No están estos dos haciendo lo mismo? "--launcher.XXMaxPermSize 384m" y "-XX: MaxPermSize = 128m"
Igor Zinov'yev
@Igor Zinov'yev: es un poco redundante, pero ambos pueden ser útiles, dependiendo de la plataforma y la versión del eclipse. Los restablecí al mismo valor y completé mi respuesta con un poco de documentación con respecto a esa configuración.
La mejor configuración de JVM siempre , en mi opinión, incluye el último JDK que puede encontrar (por lo tanto, por ahora, jdk1.6.0_b07 hasta b16, excepto b14 y b15 )
eclipse.ini
Incluso con esas configuraciones de memoria bastante bajas, puedo ejecutar grandes proyectos de Java (junto con un servidor web) en mi antiguo escritorio (2002) con 2Go RAM.
para qué es -Xssv2m, cuando lo incluyo en la configuración de vm no se iniciará el eclipse, eché un vistazo a los documentos para la configuración de JVM pero no pude encontrarlo
Craig Angus
Correcto ... eso fue un error tipográfico: Xss2m, no Xssv2m: -Xss determina el tamaño de la pila: -Xss1024k. Si el espacio de la pila es demasiado pequeño, eventualmente verá una clase de excepción java.lang.StackOverflowError (un mensaje de error mítico por aquí ;-))
VonC
¡Finalmente pude usar el segundo conjunto de configuraciones y me sorprendió lo bien que funcionan!
Craig Angus
¿He tenido la oportunidad de usar la configuración durante un tiempo ahora, el eclipse parece ágil, pero hacer compilaciones de hormigas parece más lento?
Craig Angus
@ Craig Angus: extraño, ¿qué versión de eclipse estás usando? ¿Y qué versión de hormiga está incluida?
VonC
20
Configuración de Eclipse Indigo 3.7.2 (Linux de 64 bits)
Configuración para Sun / Oracle java versión "1.6.0_31" y Eclipse 3.7 que se ejecuta en Linux x86-64:
Tenga en cuenta que esto usa solo 200 MB para el montón y 150 MB para el no montón. Si está utilizando complementos enormes, es posible que desee aumentar los límites "-Xmx200m" y "-XX: MaxPermSize = 150m".
El objetivo principal de optimización para estos indicadores ha sido minimizar la latencia en todos los casos y, como objetivo secundario de optimización, minimizar el uso de memoria.
Funciona fantásticamente para mí (aunque dupliqué los valores para la configuración relacionada con la memoria, ¡todavía es bajo y se ampolla rápidamente!)
Aktau
Tiene -XX: + UseConcMarkSweepGC y -XX: + UseParNewGC. ¿Por qué? No creo que pueda usar ambos recolectores de basura, y no estoy seguro de cuál finalmente se usa.
herman
Pensé que -XX: + UseConcMarkSweepGC es para la recolección de basura de la generación anterior y -XX: + UseParNewGC se usa para la recolección de basura eden.
Cada opción y cada argumento de una opción deben estar en su propia línea.
Josh Clemm
14
-mostrar ubicación
Para que sea más fácil tener el eclipse ejecutándose dos veces, y saber con qué espacio de trabajo está tratando
Eclipse 3.6 agrega una opción de preferencias para especificar qué mostrar para el Workspace name (shown in window title)que funciona mucho mejor que -showlocationpor tres razones:
No necesita reiniciar eclipse para que surta efecto.
Puedes elegir un código corto.
Aparece primero, antes de la perspectiva y el nombre de la aplicación.
¿Es esto tener Eclipse usando un JDK como el entorno predeterminado?
Thorbjørn Ravn Andersen
Esto se puede usar para tener Eclipse usando un JDK específico / diferente como el entorno predeterminado.
Gilberto Olimpio
7
También puedes intentar correr con JRockit . Es una JVM optimizada para servidores, pero muchas aplicaciones cliente de larga ejecución, como las IDE, funcionan muy bien en JRockit. Eclipse no es una excepción. JRockit no tiene un espacio permanente, por lo que no necesita configurarlo.
Es posible establecer un objetivo de tiempo de pausa (ms) para evitar largas pausas gc que detengan la IU.
Por lo general, no me molesto en configurar -Xmx y -Xms y dejo que JRockit haga crecer el montón como lo considere necesario. Si inicia su aplicación Eclipse con JRockit, también puede monitorear, perfilar y encontrar pérdidas de memoria en su aplicación utilizando el conjunto de herramientas JRockit Mission Control. Descarga los complementos de este sitio de actualización . Tenga en cuenta que solo funciona para Eclipse 3.3 y Eclipse 3.4
He corrido eclipse en JRockit en el pasado y corrí muy bien
Craig Angus
5
Aquí está mi propia configuración para mi Eclipse que se ejecuta en la computadora portátil i7 2630M 16GB RAM, esta configuración se ha estado utilizando durante una semana, sin un solo bloqueo, y Eclipse 3.7 funciona sin problemas.
eclipse.ini
configuraciones nuevas y mejoradas para Helios 3.6 están aquí (a continuación, en una nueva respuesta): stackoverflow.com/questions/142357/…Respuestas:
Es esa época del año otra vez: "eclipse.ini take 3" ¡la configuración devuelve el golpe!
Eclipse Helios 3.6 y 3.6.x configuraciones
texto alternativo http://www.eclipse.org/home/promotions/friends-helios/helios.png
Después de la configuración de Eclipse Ganymede 3.4.x y 3.5.x Eclipse Galileo , aquí está una mirada en profundidad en una "optimizado" eclipse.ini archivo de configuración para Eclipse Helios 3.6.x:
algunas opciones de propiedad de Sun pueden estar involucradas)( por "optimizado", quiero decir que puedo ejecutar un Eclipse completo en nuestra estación de trabajo en el trabajo, algunos viejos P4 de 2002 con 2Go RAM y XPSp3. Pero también he probado esas mismas configuraciones en Windows7 )
Eclipse.ini
ADVERTENCIA : para plataformas que no sean de Windows, use la opción de propiedad de Sun en
-XX:MaxPermSize
lugar de la opción de propiedad de Eclipse--launcher.XXMaxPermSize
.Es decir: a menos que esté utilizando la última versión 7 de jdk6u21 . Vea la sección de Oracle a continuación.
Nota:
Adapte el
p2.reconciler.dropins.directory
a un directorio externo de su elección.Ver esta respuesta SO . La idea es poder colocar nuevos complementos en un directorio independientemente de cualquier instalación de Eclipse.
Las siguientes secciones detallan lo que hay en este
eclipse.ini
archivo.El temido Oracle JVM 1.6u21 (precompilación 7) y Eclipse se bloquean
Andrew Niefer me alertó sobre esta situación y escribió una publicación de blog sobre un argumento vm no estándar (
-XX:MaxPermSize
) y puede hacer que los vms de otros proveedores no se inicien en absoluto.Pero la versión eclipse de esa opción (
--launcher.XXMaxPermSize
) no funciona con el nuevo JDK (6u21, a menos que esté utilizando la compilación 7 7u de 6u21, ver más abajo).los
finalla solución está en Eclipse Wiki , y solo para Helios en Windows con 6u21 pre build 7 :Eso es. No hay ajustes para ajustar aquí (de nuevo, solo para Helios en Windows con una versión 6u21 pre build 7 ).
Para la plataforma que no sea Windows, necesita volver a la opción pertenece a Sun
-XX:MaxPermSize
.El problema se basa en una regresión: la identificación de JVM falla debido al cambio de marca de Oracle en java.exe y desencadenó el error 319514 en Eclipse.
Andrew se encargó del Bug 320005: [lanzador]
--launcher.XXMaxPermSize: isSunVM
debería ser verdadero para Oracle , pero eso será solo para Helios 3.6.1.Francis Upton , otro usuario de Eclipse, reflexiona sobre la situación general .
Actualización u21b7, 27 de julio :
Oracle ha retrocedido el cambio para la próxima versión de Java 6 y no lo implementará nuevamente hasta JDK 7 .
Si usa jdk6u21 build 7 , puede volver a la
--launcher.XXMaxPermSize
(opción eclipse) en lugar de-XX:MaxPermSize
(la opción no estándar).La detección automática
eclipse.exe
Sun Microsystems
que se produce en la cuña del iniciador C seguirá buscando la cadena " ", pero con 6u21b7, ahora funcionará nuevamente.Por ahora, todavía mantengo la
-XX:MaxPermSize
versión (porque no tengo idea de cuándo todos lanzarán eclipse el JDK correcto ).Implícita `-startup` y` --launcher.library`
Contrariamente a la configuración anterior, la ruta exacta para esos módulos ya no está configurada, lo cual es conveniente ya que puede variar entre diferentes versiones de Eclipse 3.6.x:
org.eclipse.equinox.launcher
paquete con la versión más alta.plugins
directorio elorg.eclipse.equinox.launcher.[platform]
fragmento apropiado con la versión más alta y usa la biblioteca compartida nombradaeclipse_*
en su interior.Utilice JDK6
El JDK6 ahora se requiere explícitamente para lanzar Eclipse:
Esta pregunta SO informa una incidencia positiva para el desarrollo en Mac OS.
+ DesbloquearVMOptions experimentales
Las siguientes opciones son parte de algunas de las opciones experimentales de Sun JVM.
Se ha informado en esta publicación de blog para acelerar potencialmente Eclipse.
Vea todas las opciones de JVM aquí y también en la página oficial de opciones de Java Hotspot .
Nota: la lista detallada de esos informes de opciones que
UseFastAccessorMethods
pueden estar activos por defecto.Consulte también "Actualice su JVM" :
Abrir archivos en Eclipse desde la línea de comando
Vea la publicación de blog de Andrew Niefer informando esta nueva opción:
Vea el error 301033 para referencia. Originalmente error 4922 (octubre de 2001, corregido 9 años después).
p2 y la solicitud de diálogo sin firmar
Si está cansado de este cuadro de diálogo durante la instalación de sus muchos complementos:
, agregue su
eclipse.ini
:Vea esta publicación de blog de Chris Aniszczy y el informe de error 235526 .
---------- http://www.eclipse.org/home/categories/images/wiki.gif texto alternativo http://www.eclipse.org/home/categories/images/wiki.gif texto alternativo http://www.eclipse.org/home/categories/images/wiki.gif
Opciones adicionales
Esas opciones no están directamente en lo
eclipse.ini
anterior, pero pueden ser útiles si es necesario.El problema `user.home` en Windows7
Cuando se inicia eclipse, leerá su archivo de almacén de claves (donde se guardan las contraseñas), un archivo ubicado en
user.home
.Si por alguna razón eso
user.home
no se resuelve adecuadamente en una ruta de compromiso completo, Eclipse no se iniciará.Inicialmente planteado en esta pregunta SO , si experimenta esto, debe redefinir el archivo de almacén de claves en una ruta explícita (no más user.home para resolver al principio)
Agregue en su
eclipse.ini
:Esto ha sido rastreado por el error 300577 , se ha resuelto en esta otra pregunta SO .
Modo de depuración
Espere, hay más de un archivo de configuración en Eclipse.
si agrega a su
eclipse.ini
opción:, habilita el modo de depuración y Eclipse buscará otro archivo de configuración: un
.options
archivo donde puede especificar algunas opciones de OSGI.Y eso es genial cuando agrega nuevos complementos a través de la carpeta dropins.
Agregue en su archivo .options la siguiente configuración, como se describe en esta publicación de blog " Diagnóstico de Dropins " :
Eso viene del Bug 264924 - [reconciliador] No hay diagnóstico de problemas de dropins , lo que finalmente resuelve el siguiente problema como:
Classpath manifiesto
Ver esta publicación de blog :
Eso significa que algunos de sus proyectos ya no pueden compilarse en Helios.
Si desea volver al comportamiento de Galileo, agregue:
Consulte el error 305037 , el error 313965 y el error 313890 para obtener referencias.
Pila IPV4
Esta pregunta SO menciona una posible solución cuando no se accede a sitios de actualización de complementos:
Mencionado aquí por si acaso podría ayudar en su configuración.
Optimizaciones potenciales de JVM1.7x64
Este artículo informa:
fuente
-XX:CompileThreshold=5
causa ralentizaciones HORRENDAS para mí. ¡Deshacerme de esta opción solo reduce mi tiempo de inicio de Eclipse a 17 segundos desde> 1 minuto! Sin mencionar cuán terriblemente lento fue el IDE en general. Ver este enlace-XX:CompileThreshold=5
es un valor muy bajo (predeterminado = 10000). Este valor representa el número de invocaciones / ramas de métodos antes de compilarlo. Un valor demasiado bajo hará que su CodeCache se llene prematuramente y la consola puede informar:CodeCache is full. Compiler has been disabled
Una vez que el compilador esté desactivado, notará lentitud en la aplicación. Hay dos formas de solucionar esto: 1. Use-XX:CompileThreshold=1000
(ajuste este número) o 2. Intente aumentar el tamaño de la caché de código usando-XX:ReservedCodeCacheSize=64m
(el doble de los 32 m predeterminados)Configuración de Eclipse Galileo 3.5 y 3.5.1
Actualmente (noviembre de 2009), estoy probando con jdk6 update 17 el siguiente conjunto de opciones de configuración (con Galileo - eclipse 3.5.x, ver abajo para 3.4 o superior para Helios 3.6.x ):
(por supuesto, adaptar las rutas relativas presente en este eclipse.ini a las rutas correctas para su configuración)
Nota: para eclipse3.5 , reemplace
startup
y alineelauncher.library
por:eclipse.ini 3.5.1
Vea también mi respuesta original arriba para más información.
Cambios (desde julio de 2009)
org.eclipse.equinox.p2.reconciler.dropins.directory
opción.Antes, esas rutas relativas se reescribieron en absolutas cuando se lanzó eclipse ...
Advertencias
Hubo un error con puntos de interrupción ignorados en realidad relacionados con el JDK.
Utilice JDK6u16 o más reciente para iniciar eclipse (puede definir tantos JDK que desee compilar dentro de eclipse: no es porque inicie un eclipse con JDK6 que tendrá que compilar con ese mismo JDK).
Max
Tenga en cuenta el uso de:
Como se documenta en el Wiki de Eclipse ,
Como se detalla en esta entrada :
fuente
Eclipse Ganymede 3.4.2 configuración
Para configuraciones más recientes, vea las configuraciones de Eclipse Galileo 3.5 arriba .
JDK
La mejor configuración de JVM siempre , en mi opinión, incluye el último JDK que puede encontrar (por lo tanto, por ahora, jdk1.6.0_b07 hasta b16, excepto b14 y b15 )
eclipse.ini
Incluso con esas configuraciones de memoria bastante bajas, puedo ejecutar grandes proyectos de Java (junto con un servidor web) en mi antiguo escritorio (2002) con 2Go RAM.
Ver respuesta SO de GKelly y el blog de Piotr Gabryanczyk para más detalles acerca de las nuevas opciones.
Supervisión
También puede considerar lanzar:
Como se dijo en una pregunta anterior sobre el consumo de memoria .
fuente
Configuración de Eclipse Indigo 3.7.2 (Linux de 64 bits)
Configuración para Sun / Oracle java versión "1.6.0_31" y Eclipse 3.7 que se ejecuta en Linux x86-64:
Tenga en cuenta que esto usa solo 200 MB para el montón y 150 MB para el no montón. Si está utilizando complementos enormes, es posible que desee aumentar los límites "-Xmx200m" y "-XX: MaxPermSize = 150m".
El objetivo principal de optimización para estos indicadores ha sido minimizar la latencia en todos los casos y, como objetivo secundario de optimización, minimizar el uso de memoria.
fuente
-mostrar ubicación
Para que sea más fácil tener el eclipse ejecutándose dos veces, y saber con qué espacio de trabajo está tratando
Eclipse 3.6 agrega una opción de preferencias para especificar qué mostrar para el
Workspace name (shown in window title)
que funciona mucho mejor que-showlocation
por tres razones:fuente
Si va con la actualización 14 de jdk6, le sugiero que use el recolector de basura G1 que parece ayudar al rendimiento.
Para hacerlo, elimine estas configuraciones:
-XX: + UseConcMarkSweepGC
-XX: + CMSIncrementalMode
-XX: + CMSIncrementalPacing
y reemplazarlos con estos:
-XX: + UnlockExperimentalVMOptions
-XX: + UseG1GC
fuente
Si está utilizando Linux + Sun JDK / JRE 32bits , cambie el "-vm" a:
Si está utilizando Linux + Sun JDK / JRE 64bits , cambie el "-vm" a:
Eso está funcionando bien para mí en Ubuntu 8.10 y 9.04
fuente
También puedes intentar correr con JRockit . Es una JVM optimizada para servidores, pero muchas aplicaciones cliente de larga ejecución, como las IDE, funcionan muy bien en JRockit. Eclipse no es una excepción. JRockit no tiene un espacio permanente, por lo que no necesita configurarlo.
Es posible establecer un objetivo de tiempo de pausa (ms) para evitar largas pausas gc que detengan la IU.
Por lo general, no me molesto en configurar -Xmx y -Xms y dejo que JRockit haga crecer el montón como lo considere necesario. Si inicia su aplicación Eclipse con JRockit, también puede monitorear, perfilar y encontrar pérdidas de memoria en su aplicación utilizando el conjunto de herramientas JRockit Mission Control. Descarga los complementos de este sitio de actualización . Tenga en cuenta que solo funciona para Eclipse 3.3 y Eclipse 3.4
fuente
Aquí está mi propia configuración para mi Eclipse que se ejecuta en la computadora portátil i7 2630M 16GB RAM, esta configuración se ha estado utilizando durante una semana, sin un solo bloqueo, y Eclipse 3.7 funciona sin problemas.
Cálculos: para Win 7 x64
fuente
Y esta configuración ha funcionado como un encanto para mí. Estoy ejecutando OS X10.6, Eclipse 3.7 Indigo, JDK1.6.0_24
fuente
Mi propia configuración (Java 1.7, modificar para 1.6):
fuente
A Eclipse le gusta mucha RAM. Utilice al menos -Xmx512M. Más si está disponible.
fuente
Si usted es como yo y tuvo problemas con la versión actual de Oracle de 1.6, entonces es posible que desee actualizar su JDK o establecer
. Más información está disponible aquí: http://java.dzone.com/articles/latest-java-update-fixesfuente
XX: + UseParallelGC, ¡esa es la opción más increíble!
fuente
-vm
C: \ Archivos de programa \ Java \ jdk1.6.0_07 \ jre \ bin \ client \ jvm.dll
Para especificar qué versión de Java está utilizando, y use el dll en lugar de iniciar un proceso de Java
fuente
Esto es lo que uso (aunque los tengo en el acceso directo en lugar del archivo de configuración):
eclipse.exe -showlocation -vm "C: \ Java \ jdk1.6.0_07 \ bin \ javaw.exe" -vmargs -Xms256M -Xmx768M -XX: + UseParallelGC -XX: MaxPermSize = 128M
fuente