2009-06-25 28 views
5

Tengo un producto RCP que no se ejecuta. Luego instalé Eclipse recientemente, y cuando abro Eclipse.exe no abre Eclipse IDE. Me sale el error: NoClassDefFoundError: com/mercury/javashared/agentloader/AgentBootstrap (Por favor, vea el rastro completo a continuación).No se puede ejecutar la aplicación Eclipse. No se puede iniciar Eclipse IDE

El sistema tiene la última jdk, jre instalado. ¿Cuál podría ser el motivo de ese error? (PD: el mismo eclipse archieve cuando se descomprime en una máquina diferente funciona bien). Soy capaz de ejecutar Eclipse y Eclipse RCP mi producto no)

!ENTRY org.eclipse.osgi 4 0 2009-06-25 10:40:19.468 
!MESSAGE Application error 
!STACK 1 
java.lang.NoClassDefFoundError: com/mercury/javashared/agentloader/AgentBootstrap 
at org.eclipse.swt.widgets.Display.<init>(Display.java:393) 
at org.eclipse.ui.internal.Workbench.createDisplay(Workbench.java:448) 
at org.eclipse.ui.PlatformUI.createDisplay(PlatformUI.java:161) 
at org.eclipse.ui.internal.ide.IDEApplication.createDisplay(IDEApplication.java:122) 
at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:75) 
at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:78) 
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:92) 
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:68) 
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400) 
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177) 
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
at java.lang.reflect.Method.invoke(Unknown Source) 
at org.eclipse.core.launcher.Main.invokeFramework(Main.java:336) 
at org.eclipse.core.launcher.Main.basicRun(Main.java:280) 
at org.eclipse.core.launcher.Main.run(Main.java:977) 
at org.eclipse.core.launcher.Main.main(Main.java:952) 
Caused by: java.lang.ClassNotFoundException: com.mercury.javashared.agentloader.AgentBootstrap 
at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:402) 
at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:347) 
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:83) 
at java.lang.ClassLoader.loadClass(Unknown Source) 
at java.lang.ClassLoader.loadClassInternal(Unknown Source) 
... 17 more 

ACTUALIZACIÓN: había instalado QTP (Quick Test Pro) en la máquina. Cuando desinstalé QTP ahora, puedo usar el producto RCP y Eclipse.exe.

Ahora, ¿cuál es la relación entre QTP y Eclipse? Quiero que ambos coexistan.

+0

@RCB: gracias por este comentario. Sería interesante comprobar, después de la instalación correcta de QTP, si ese producto ha cambiado o configurado algunas variables de entorno relacionadas con Java. Incluso podría volver a publicar sus comentarios y algunos detalles adicionales (sobre los valores de las variables de entorno) como una respuesta (y elegir, si lo desea, como el oficial) – VonC

Respuesta

8

Then I installed Eclipse freshly, and when I open Eclipse.exe it doesn't open Eclipse IDE

The same eclipse archive when unzipped on a different machine works fine

Eso debería significar un problema de espacio de trabajo: Eclipse tratar de recrear una vista para la que le falta la jarra.
intento poner en marcha el Eclipse con la opción '-clean', y asegurándose de que no hace referencia a una nueva área de trabajo fresco (con la opción -data, como se ilustra en este eclipse.ini)

This question ilustra una salida limpia:

eclipse.exe -clean --launcher.ini path\to\my_eclipse.ini 

En cuanto a QTP, consulte este artículo from IBM, que describe una situación similar.

In this scenario HP Mercury Quick Test Pro Professional v9.3 was installed and the following Microsoft Windows XP User and System Environmental variables were present:

IBM_JAVA_OPTION and _JAVA_OPTION 

A cada uno se establece en:

-Xrunjvmhook -Xbootclasspath/a:C:\PROGRA~1\HP\QUICKT~1\bin\JAVA_S~1\classes;C:\PROGRA~1\HP\QUICKT~1\bin\JAVA_S~1\classes\jasmine.jar 

o más explícitamente:

-Xrunjvmhook -Xbootclasspath/a:C:\PROGRA~1\HP\QuickTest Professional\bin\java_shared\classes;C:\PROGRA~1\HP\QuickTest Professional\bin\java_shared\classes\jasmine.jar 

Note: HP Mercury Diagnostic Tool is another product that used these environment variables in the past. Contact HP Support if up to date information and support is needed on their products.

However it is important to stress the focus is on these environment variables being used dangerously by any vendor product or any software or user in general setting them directly

Resolving the problem
Delete or clear the values of the IBM_JAVA_OPTION and _JAVA_OPTION variables.

After deleting/clearing the environment variables, it should be possible to start Rational Application Developer or other IBM SDK for Java (== JDK) based product.

Note: Deleting or clearing these variables may prevent the other products (such as the aforementioned HP products) from working.

Warning: Deleting or clearing or changing IBM_JAVA_OPTION or _JAVA_OPTION should be done with caution if these are needed settings. There are legitimate and safe uses of these environment variables to set JVM options.


Si este es el caso, que rem inds mí de mi respuesta a la pregunta:

"Why doesn’t the Java SDK installer set JAVA_HOME?"

;)


Si quieres tanto Eclipse y QTP coexistan, es necesario asegurarse de que cualquier configuración en ejecución que pueda tener (dentro o fuera del eclipse) que necesitan ejecutar "con" QTP son los scripts que establecen esas variables adicionales (_JAVA_HOME u otro).
Si esas variables se establecen globalmente (por el proceso de instalación de QTP) ... pueden suceder cosas malas.

+1

Hola, gracias por la explicación detallada. Me parece que inicialmente, antes de instalar QTP, Java (jdk + jre) que estaba presente no era apropiado. Después de ver la falla del eclipse instalé java nuevamente, pero eso no fue de ayuda. Luego, cuando desinstalé e instalé QTP nuevamente, significaba que QTP ahora estaba instalado en una máquina que tenía Java (jdk + jre) adecuada. Y esta vez después de la instalación, todo empezó a funcionar normalmente. –

+0

¿Alguien sabe si hay una manera de hacer que Java (o Eclipse) ignore la variable JAVA_TOOL_OPTIONS ... o posiblemente reemplace el valor de agentlib por uno que no cause interferencia? –

+1

@david: puede intentar definirlas en "" en [[eclipse.ini'] (http://stackoverflow.com/questions/142357/what-are-the-best-jvm-settings-for-eclipse/3275659 # 3275659), como argumento vm ('-DJAVA_TOOL_OPTIONS =" "') – VonC

0

Creo que el problema podría ser que el "paquete" de mercurio se menciona de alguna manera, pero no en el classpath.

3

Compruebe la variable JAVA_TOOL _OPTIONS. Probablemente tenga un valor de "-agentlib: jvmhook".Borre la variable y los productos basados ​​en Eclipse deberían comenzar a funcionar.

Probablemente necesites actualizar tu HP QT launcher para establecer esta variable cuando quieras hacer un perfil.

+1

Anteriormente había cambiado el nombre de la variable '_JAVA_TOOL_OPTIONS' porque estaba en conflicto con el tiempo de ejecución de Java que se estaba ejecutando cuando inicié el instalador de Weblogic. Volver a nombrar (volví a '_JAVA_TOOL_OPTIONS' me ayudó. –

0

si eclipse no se ejecuta, por ejemplo, al hacer doble clic en eclipse.exe, el eclipse aparece durante unos segundos y desaparece, en este caso, vaya al símbolo del sistema, migre a la carpeta eclipse y escriba eclipse -vm C: \ Java \ jdk1.6.0_33 \ jre \ bin \ javaw. Esto se debe a que eclipse busca esta ruta de manera predeterminada. En mi caso, se está ejecutando después de que hice esto. Si su jdk está instalado en archivos de programa, desde archivos de programa, copie el carpeta java y pasado en c unidad.

2

sé esta pregunta se ha hecho mucho antes, estoy respondiendo porque si alguien ve más adelante esta pregunta entonces se obtendrá idea de cómo hacerlo como dijo @java programador, eclipse busca la ubicación predeterminada C:\Java\jdk1.6.0_33\jre\bin\javaw.

También puede establecer manualmente la ruta si su Java está instalado en alguna otra ruta. el camino es simple busque el archivo eclipse.ini y ábralo con wordpad. Ahora busque "abrir archivo" debajo que escriba la ruta completa para el javaw. vea la captura de pantalla. por ejemplo, si su Java está instalado en la unidad C y luego la ruta completa para javaw habría

C:\Program Files\Java\jdk1.6\bin\javaw.exe 

Ahora guarda el archivo eclipse.ini y ahora haga doble clic en eclipse.exe. Se ejecutará.

enter image description here

0

Si Eclipse no se está ejecutando, por ejemplo, cuando se hace doble clic en el eclipse.exe, a continuación, Eclipse aparece durante unos segundos y desaparece:

  1. Ir a variables de entorno
  2. claras del Opciones de Java e IBM.
  3. Intenta abrir el Eclipse.
1

crear un archivo de proceso por lotes que borre las variables y ejecute el RAD.

set IBM_JAVA_OPTIONS= 
set _JAVA_OPTIONS= 
set JAVA_TOOL_OPTIONS= 
"C:\Program Files\IBM\RAD85\eclipse.exe" -product com.ibm.rational.rad.product.v85.ide 
1

instalación de QTP lío con classpath de muchas aplicaciones.

Recomendando configurar un archivo por lotes para que se ejecute cada vez para que la configuración global no se modifique.

set IBM_JAVA_OPTIONS= 
set _JAVA_OPTIONS= 
set JAVA_TOOL_OPTIONS= 

cd [your eclipse.exe] 
eclipse.exe 

Guárdelo como archivo .bat y haga doble clic para ejecutar. Deberías ver el eclipse trabajando.

0

Compruebe si la máquina virtual funciona correctamente o no. Si no, desinstala y vuelve a instalar jdk.

+1

Bienvenido al desbordamiento de la pila. Indique por qué volver a instalar la jdk ayudará a resolver el problema. – JackDev

0

Me he enfrentado con el mismo problema. Desinstale toda la versión java que tenga en su máquina desde el panel de control. Luego reinstala Java e intenta ejecutar eclipse. esto funciona para mi.

0

Tuve el mismo error.Entonces, encontré la siguiente solución:

  1. Vaya a la carpeta con eclipse.exe. y la configuración de apertura de archivo

    enter image description here

  2. Después de que elimine "-vmargs" de línea y añadir su camino hacia el JDK (En mi ocasión es C: \ Archivos de programa \ Java \ jdk1.7.0_79 \ bin)

    enter image description here

    1. Ahora el Eclipse debe comenzar normalmente.
Cuestiones relacionadas