Tarea: debe crear un archivo JAR ejecutable con un juego JavaFX a través del motor gráfico de CodeGym.

Para esto necesitas:

  1. Bifurcación del repositorio https://github.com/CodeGymCC/project-maven
  2. Descarga tu versión del proyecto a tu computadora. A continuación, trabajaremos con el archivo pom.xml .
  3. Agregar dependencias:
    • org.apache.commons:commons-lang3:3.12.0
    • org.openjfx:javafx-controls:18.0.1
    • com.codegym: desktop-game-engine:1.0 (esta dependencia se cubrirá en una publicación separada)
    • org.junit.jupiter: junit-jupiter-engine: 5.8.2 (con prueba de alcance)
  4. Agregar complementos para:
    • instalando la dependencia com.codegym: desktop-game-engine:1.0 desde la biblioteca lib al repositorio local (google para obtener ayuda);
    • deje el complemento maven-compiler-plugin sin cambios;
    • un complemento que recopilará todas las dependencias (con compilación de alcance) y las agregará a algún directorio durante la compilación;
    • el complemento maven-jar-plugin , que creará un archivo jar que contendrá el código del juego y las dependencias. En este complemento, debe configurar el archivo MANIFEST.MF para que contenga las secciones: Class-PathyMain-ClassRsrc-Main-Class
    • Class-PathTodas nuestras dependencias JAR deben estar registradas en .
    • Main-ClassSe debe escribir una clase org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoaderque pueda usar el classpath de los archivos JAR y que también pueda iniciar una aplicación JavaFX.
    • Rsrc-Main-ClassLa clase inicial del juego (com.codegym.games.racer.RacerGame) debe estar registrada en el mismo .
  5. En el complemento maven-surefire, realice una configuración para que la prueba StrangeTest no se ejecute en la compilación. El resto de las pruebas deberían ejecutarse.
  6. Agregue una sección de "recursos" para decir que las dependencias JAR creadas son un recurso para que el complemento maven-jar las coloque dentro del archivo JAR en la carpeta lib/
  7. Cargue los cambios en su repositorio de GitHub, envíe un enlace al maestro.

Útil:

  1. La compilación debe ejecutarse con el comando mvn clean install .
  2. Ejecutar el juego (a través de Maven) con el fin de verlo se puede hacer con el comando mvn javafx:run.
  3. Algunos complementos deben anular la fase .
  4. El proyecto utiliza la versión 18.0.1 de JDK. Debe ser descargado en su computadora.
  5. Al construir a través de Maven, habrá errores al principio. Léelos atentamente y simplificarás tu vida.
  6. No cambie nada en el paquete org.eclipse.jdt.internal.jarinjarloader . Tiene una clase de cargador personalizada (honestamente copiada de StackOverflow), en la que se cambia el inicio del método principal para iniciar la aplicación JavaFX. Utilizar solo con fines educativos.
  7. Si completas todos los puntos, como resultado del montaje recibirás un archivo fat-JAR . Puedes empezar y comprobar que todo se hace correctamente con el comando:
    <way to java 18> -jar <the name of the resultant jar file>
    
    //Example
    "C:\Users\leo12\.jdks\openjdk-18.0.1.1\bin\java.exe" -jar "E:\temp\project-maven-1.0.jar"
  8. Como resultado verás:
  9. La compilación depende de su sistema operativo. Es decir, si un archivo JAR se crea en Windows, se puede ejecutar en cualquier computadora con Windows con Java18. Y no se puede hacer en Mac y Linux.


Análisis de proyectos . Ver después de la finalización!