Opgave: Du skal lave en eksekverbar JAR-fil med et JavaFX-spil gennem grafikmotoren fra CodeGym.

Til dette har du brug for:

  1. Fork fra repository https://github.com/CodeGymCC/project-maven
  2. Download din version af projektet til din computer. Dernæst vil vi arbejde med filen pom.xml .
  3. Tilføj afhængigheder:
    • org.apache.commons:commons-lang3:3.12.0
    • org.openjfx:javafx-controls:18.0.1
    • com.codegym: desktop-game-engine:1.0 (denne afhængighed vil blive dækket i et separat indlæg)
    • org.junit.jupiter: junit-jupiter-motor: 5.8.2 (med scope test)
  4. Tilføj plugins til:
    • installation af afhængigheden com.codegym: desktop-game-engine:1.0 fra biblioteket til det lokale lager (google for at få hjælp);
    • lad maven -compiler-plugin-pluginet være uændret;
    • et plugin, der vil samle alle afhængigheder (med scope-kompilering) og tilføje dem til en eller anden mappe under opbygningen;
    • maven -jar-plugin-pluginet , som vil lave en jar-fil, der indeholder spilkoden og afhængigheder. I dette plugin skal du konfigurere filen MANIFEST.MF til at indeholde sektioner: Class-Path, Main-ClassogRsrc-Main-Class
    • Class-PathAlle vores JAR-afhængigheder skal være registreret i .
    • Main-ClassDer skal skrives en klasse ind org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader, som kan bruge klassestien fra JAR-filer, og som også kan starte en JavaFX-applikation.
    • Rsrc-Main-ClassSpillets startklasse (com.codegym.games.racer.RacerGame) skal være registreret i det .
  5. I maven-surefire-pluginet skal du lave en konfiguration, så StrangeTest- testen ikke kører på build. Resten af ​​testene skal køre.
  6. Tilføj en "ressourcer" -sektion for at sige, at de indbyggede JAR-afhængigheder er en ressource, så maven-jar-plugin'et placerer dem i JAR-filen i mappen lib/
  7. Upload ændringer til dit GitHub-lager, send et link til det til læreren.

Nyttig:

  1. Bygningen skal køres med kommandoen mvn clean install .
  2. At køre spillet (via Maven) med henblik på visning kan udføres med kommandoen mvn javafx:run.
  3. Nogle plugins skal tilsidesætte fase .
  4. Projektet bruger JDK version 18.0.1. Den skal downloades på din computer.
  5. Når du bygger gennem Maven, vil der være fejl i starten. Læs dem omhyggeligt, og du vil forenkle dit liv.
  6. Ændre ikke noget i org.eclipse.jdt.internal.jarinjarloader -pakken . Den har en brugerdefineret loader-klasse (ærligt kopieret fra StackOverflow), hvor lanceringen af ​​hovedmetoden ændres for at starte JavaFX-applikationen. Brug kun til uddannelsesformål.
  7. Hvis du fuldfører alle punkterne, vil du som et resultat af samlingen modtage en fat-JAR-fil . Du kan starte og kontrollere, at alt er udført korrekt med kommandoen:
    <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. Som et resultat vil du se:
  9. Opbygningen afhænger af dit operativsystem. Det vil sige, at hvis en JAR-fil er bygget på Windows, kan den køres på enhver Windows-computer med Java18. Og det kan ikke gøres på Mac og Linux.


Projektanalyse . Se efter færdiggørelse!