es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

No se ha podido encontrar el recurso: /META-INF/BenchmarkList en el proyecto Gradle en Eclipse.

El proyecto de muestra está listo para ejecutarse (se construye en Gradle y se compila con Eclipse) en https://github.com/langelescu/java-json-benchmark.

Es un repositorio bifurcado de Github configurado para compilar en Gradle, para el cual creé un espacio de trabajo Eclipse 2021-09. Estoy tratando de ejecutarlo 1) desde el entorno de desarrollo de Eclipse o 2) desde la línea de comandos, pero me encuentro con dos errores:

1) Si lo ejecuto desde Eclipse con argumentos de configuración de ejecución “deser –apis stream –libs jackson,genson”, obtengo:

Excepción en el hilo “main” java.lang.RuntimeException: ERROR: No se puede encontrar el recurso: /META-INF/BenchmarkList en org.openjdk.jmh.runner.AbstractResourceReader.getReaders (AbstractResourceReader.java: 98) en org.openjdk.jmh.runner.BenchmarkList.find (BenchmarkList.java: 122) en org.openjdk.jmh.runner.Runner.internalRun (Runner.java: 263) en org. openjdk.jmh.runner.Runner.run (Runner.java: 209) en com.github.fabienrenaud.jjb.Cli $ AbstractCommand.run (Cli.java: 110) en com.github.fabienrenaud.jjb.Cli.main (Cli.java: 40)

2) Si lo ejecuto desde la línea de comandos con el comando ./run deser –apis stream –libs jackson,genson, obtengo:

Excepción en el hilo “principal” io.airlift.airline.ParseArgumentsUnexpectedException: Se encontraron parámetros inesperados: [genson] en io.airlift.airline.Cli.validate (Cli.java: 194) en io.airlift.airline.Cli.parse (Cli.java: 132) en io.airlift.airline.Cli.parse (Cli.java: 108) en io.airlift.airline.Cli.parse (Cli.java: 103) en com.github.fabienrenaud.jjb.Cli.main (Cli.java: 40)

Ambos usos son correctos según el archivo lea-me en el repositorio original. Sospecho que es un problema de configuración que crea ambos problemas. ¿Cómo puedo solucionarlo?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Parece que los dos errores están relacionados con distintos problemas.

    En el caso del primer error, “Unable to find the resource: /META-INF/BenchmarkList”, parece que JMH no está encontrando los recursos de benchmark. Una solución posible es agregar la siguiente línea a la configuración de ejecución en la pestaña “VM arguments” en Eclipse:

    -Djmh.resources=<ruta-al-proyecto>/src/main/resources

    Reemplaza <ruta-al-proyecto> con la ruta absoluta al directorio del proyecto. Esto debería decirle a JMH dónde encontrar los recursos de benchmark.

    En cuanto al segundo error, “Found unexpected parameters: [genson]”, parece haber un problema con los argumentos de línea de comando. Según el archivo readme, la sintaxis correcta es:

    ./run <comando> --apis <api1>,<api2>,... --libs <lib1>,<lib2>,...

    Asegúrate de que el comando esté escrito correctamente y de que los argumentos de API y biblioteca estén separados por comas sin espacios. También asegúrate de estar ejecutando el comando desde el directorio raíz del proyecto.

    Si ninguna de estas soluciones funciona, puede haber otros problemas de configuración que investigar.

Comments are closed.