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.

Actualización de Intellij 2020.1.2 a IntelliJ 2021.2.3 Problema al usarlo con Java Play 2.2

Estoy actualizando mi IDE de IntelliJ 2020.1.2 a IntelliJ 2021.2.3.

Mi proyecto utiliza una biblioteca Java Play bastante antigua, play_2.10-2.2.0.jar, que por defecto recuperará los mensajes de su propio archivo jar. La siguiente imagen captura lo que está presente en el archivo jar de Play, donde los mensajes se encuentran en el directorio raíz.
enter image description here

Y cuando comencé a ejecutar la aplicación usando IntelliJ, en lugar de recuperar correctamente el archivo de mensajes desde la carpeta play .m2 como se especifica en el pom.xml, obtiene el archivo jar de tiempo de ejecución de IntelliJ como se muestra a continuación.

enter image description here

Lo cual, por supuesto, genera el problema. Este es un problema que la IDE anterior no tenía.

Y parece que hay un choque en el classpath aquí.
¿Cómo puedo asegurarme de que el classpath del jar de Play siempre anule al de IntelliJ? [Aunque creo que pueden surgir otras excepciones en caso de que IntelliJ no encuentre correctamente la carpeta de mensajes.

Cuando uso el comando java, siempre puedo asegurar el orden especificando -classpath. ¿Cómo puedo hacer lo mismo en IntelliJ? Especificarlo en los módulos de la estructura del proyecto puede no ser útil, ya que parece que el archivo jar de tiempo de ejecución de IntelliJ nunca está presente aquí.

¿Existe alguna solución para resolver este problema?

Gracias.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Para asegurarse de que el play_2.10-2.2.0.jar ruta de clase siempre sobrescribe el jar de ejecución de IntelliJ, puedes seguir estos pasos:

    1. Abre tu proyecto en IntelliJ IDEA.
    2. Ve a la ventana de Configuraciones de Ejecución/Depuración haciendo clic en la opción Editar Configuraciones… en la esquina superior derecha del IDE.
    3. Selecciona la configuración de ejecución de tu proyecto de la lista en el lado izquierdo de la ventana.
    4. En la pestaña Configuración, desplázate hacia abajo hasta la sección llamada “Antes del lanzamiento” y haz clic en el ícono + para agregar un nuevo elemento.
    5. Selecciona “Ejecutar otra configuración” en el menú y elige “Ejecutar otra configuración…” en la lista desplegable.
    6. En la ventana “Ejecutar otra configuración”, selecciona “Aplicación” y elige la configuración de ejecución de tu proyecto de la lista.
    7. Marca la casilla “Antes del lanzamiento” junto a tu biblioteca play_2.10-2.2.0.jar en la lista.
    8. Mueve la biblioteca play_2.10-2.2.0.jar hacia arriba en la lista haciendo clic en la flecha hacia arriba junto a ella hasta que esté en la parte superior.
    9. Haz clic en OK para guardar la configuración.

    Esto debería asegurarse de que la ruta de clase de tu proyecto siempre priorice la biblioteca play_2.10-2.2.0.jar sobre el jar de ejecución de IntelliJ.

Comments are closed.