Pregunta

Estoy ejecutando un caso de prueba JUnit

Tengo el siguiente error,

A fatal error has been detected by the Java Runtime Environment:

Internal Error (classFileParser.cpp:3174), pid=2680, tid=2688

  Error: ShouldNotReachHere()

  JRE version: 6.0_18-b07

  Java VM: Java HotSpot(TM) Client VM (16.0-b13 mixed mode windows-x86 )

Puede cualquier organismo favor sugerir la solución para resolver

No hay solución correcta

Otros consejos

Tengo el mismo problema, pero con un montón de google he encontrado la respuesta! Ver esta página

Cita desde el enlace:


# An unexpected error has been detected by Java Runtime Environment:
#
#  Internal Error (classFileParser.cpp:2924), pid=5364, tid=6644
#  Error: ShouldNotReachHere
  1. Esto se debe a que estamos utilizando JUnit aplicación trozo de Android. Ir a Ejecutar -> Ejecutar como -> configuraciones de ejecución de nuevo y en la configuración de JUnit reciente creación de rutas de clases Bootstrap entradas quitar librería Android
  2. A continuación, añadir la biblioteca, utilizando avanzada botón ..., y añadir JRE Biblioteca del sistema y JUnit 3
  3. Aplicar y ejecutar

Prueba de esto, que trabajó para mí.

Tendrá que tomar esto con Sun - se parece a un error de JVM para mí. Si es reproducible, debe ser capaz de ejecutar Java de tal manera que se genere más detalles (por ejemplo -verbose, etc). Si se puede reducir a un caso mínima que causa el error (el código fuente siempre ayuda!), Que también va un largo camino.

http://java.sun.com/developer/technicalArticles/bugreport_howto /index.html

http://bugreport.sun.com/bugreport/crash.jsp

Mientras tanto, es posible que desee probar con una implementación JVM diferente (tal vez incluso un nivel de parches más antigua del JRE de Sun).

A Ejecutar como -.> Ejecutar configuraciones ... y seleccione la configuración que está utilizando
Seleccione la Clase Path y seleccione BootStrap entradas .
Haga clic en Advance y Añadir Biblioteca y selecciona JRE Biblioteca del sistema .
Tocar el tema y que sea la primera entrada en la lista de BootstrapEntries.

Aplicar y ejecutar ...

Otra posible explicación: un fallo de hardware. Descartarse si se puede reproducir el error en máquinas diferentes.

Me resolvieron mediante

  • Salir Eclipse
  • Eliminar el bin y Gen directorios en su proyecto
  • Inicio Eclipse
  • Reconstruir su proyecto

He encontrado recientemente solución para este problema que fue publicada por devdanke :

"A partir del 11-julio-2010 y Android 2.1, el trabajo en torno al uso que es segregar pruebas en diferentes clases. Cualquier prueba (s) que no requieren ningún API de Android entran en sus propias clases. Para cada uno de estas clases, que eliminan las referencias a Android en su pestaña Ejecutar configuraciones, rutas de clases ".

El problema de tener que configurar clase por clase es entonces no es posible ejecutar todas las pruebas en proyecto. mejor enfoque es la creación de 2 proyectos de prueba con diferentes conjuntos de bibliotecas.

proyecto Standard Android JUnit Test puede crearse siguiendo aquí y la muestra se ve la clase de pruebas como:

import android.test.AndroidTestCase;
public class ConverterTest extends AndroidTestCase {
    public void testConvert() {
        assertEquals("one", "one");
    }   
}

A continuación, el proyecto de prueba JUnit se puede convertir de proyecto Android de prueba JUnit mediante la eliminación de Android Biblioteca de trayectoria de la estructura del proyecto, y la adición de JRE Biblioteca del sistema y JUnit 3 biblioteca, y se ve la clase de muestra de prueba como:

import junit.framework.TestCase;
public class ConverterTest extends TestCase{
    public void testConvert() {
        assertEquals("one", "one");
    }   
}

He tenido un problema similar, descubrí que era porque había generado una nueva actividad con una entrada principal [] trozo. Una vez que he eliminado el código principal [] de la nueva templatye actividad se fue el error.

YMMV

Esto podría ser un error de JVM; @ ver la respuesta de Zac. Pero también podría ser que su caso de prueba JUnit está causando un archivo de código de bytes dañado se va a cargar. Intentan reconstruir todos sus archivos .class, y si esto no soluciona el problema de intentar re-cargar ninguna biblioteca externa que su código depende.

¿Usted funciona en una plataforma soportada (Windows, una de las pocas versiones de Linux?) Si no es así, que es el primero en probar.

Si se encuentra en una plataforma compatible, entonces rebajar a _17 y ver si eso ayuda.

A continuación, hacer un informe de error a Sol y espero que lo fija algún día (a menos que quiera darles dinero para su fijación más rápida).

Ir a Ejecutar como -> Ejecutar Configuraciones-> classpath-> BootStrap entradas Haga clic en Advance, a continuación, Añadir y seleccione Biblioteca Biblioteca Sistema JRE como una primera entrada. Aplicar y ejecutar ...

No estoy seguro de si se haya podido llegar a la solución para su problema o no, sino simplemente su pregunta aparecido mientras estaba buscando la solución para el mismo problema que estoy enfrentando. Y tengo una solución a partir de la misma pila, por lo que sólo pensado para compartir un enlace con usted si eso te ayudas por cualquier medio. El enlace es la siguiente:

No se puede ejecutar el caso 4 prueba unitaria en el proyecto Eclipse Android

Otra posible razón (para referencias futuras): Había copiado accidentalmente en un método principal en mi código, haciendo que Eclipse para reconocer el proyecto como una aplicación Java, lanzando así con esa configuración.

Para resolverlo entré en Ejecutar> Ejecutar configuraciones ... y luego cambié de mi presunta principal de la aplicación Java para la actividad principal de mi aplicación Android mediante la simple elección en la columna izquierda.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top