Tugas: Anda perlu membuat fail JAR boleh laku dengan permainan JavaFX melalui enjin grafik daripada CodeGym.

Untuk ini anda perlukan:

  1. Garpu dari repositori https://github.com/CodeGymCC/project-maven
  2. Muat turun versi projek anda ke komputer anda. Seterusnya, kami akan bekerja dengan fail pom.xml .
  3. Tambah kebergantungan:
    • org.apache.commons:commons-lang3:3.12.0
    • org.openjfx:javafx-controls:18.0.1
    • com.codegym: desktop-game-engine:1.0 (pergantungan ini akan diliputi dalam siaran berasingan)
    • org.junit.jupiter: junit-jupiter-enjin: 5.8.2 (dengan ujian skop)
  4. Tambahkan pemalam untuk:
    • memasang dependency com.codegym: desktop-game-engine:1.0 daripada perpustakaan lib ke repositori tempatan (google untuk bantuan);
    • biarkan pemalam maven -compiler-plugin tidak berubah;
    • pemalam yang akan mengumpulkan semua kebergantungan (dengan penyusunan skop) dan menambahkannya pada beberapa direktori semasa pembinaan;
    • pemalam maven-jar-plugin , yang akan membuat fail jar yang mengandungi kod permainan dan kebergantungan. Dalam pemalam ini, anda perlu mengkonfigurasi fail MANIFEST.MF untuk mengandungi bahagian: Class-Path, Main-ClassdanRsrc-Main-Class
    • Class-PathSemua tanggungan JAR kami hendaklah didaftarkan dalam .
    • Kelas Main-Classmesti ditulis di dalamnya org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoaderyang boleh menggunakan classpath daripada fail JAR, dan juga boleh memulakan aplikasi JavaFX.
    • Rsrc-Main-ClassKelas permulaan permainan (com.codegym.games.racer.RacerGame) mesti didaftarkan di dalamnya .
  5. Dalam maven-surefire-plugin, buat konfigurasi supaya ujian StrangeTest tidak dijalankan pada binaan. Selebihnya ujian harus dijalankan.
  6. Tambah bahagian "sumber" untuk mengatakan bahawa kebergantungan JAR yang dibina adalah sumber supaya maven-jar-plugin meletakkannya di dalam fail JAR dalam folder lib/
  7. Muat naik perubahan pada repositori GitHub anda, hantar pautan kepadanya kepada guru.

Berguna:

  1. Binaan mesti dijalankan dengan perintah mvn clean install .
  2. Menjalankan permainan (melalui Maven) untuk tujuan tontonan boleh dilakukan dengan perintah mvn javafx:run.
  3. Sesetengah pemalam perlu mengatasi fasa .
  4. Projek ini menggunakan JDK versi 18.0.1. Ia mesti dimuat turun pada komputer anda.
  5. Apabila membina melalui Maven, akan terdapat ralat pada mulanya. Baca dengan teliti dan anda akan memudahkan hidup anda.
  6. Jangan ubah apa-apa dalam pakej org.eclipse.jdt.internal.jarinjarloader . Ia mempunyai kelas pemuat tersuai (disalin secara jujur ​​daripada StackOverflow), di mana pelancaran kaedah utama ditukar untuk melancarkan aplikasi JavaFX. Gunakan untuk tujuan pendidikan sahaja.
  7. Jika anda melengkapkan semua mata, sebagai hasil daripada perhimpunan anda akan menerima fail fat-JAR . Anda boleh memulakan dan menyemak sama ada semuanya dilakukan dengan betul dengan arahan:
    <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. Hasilnya anda akan melihat:
  9. Binaan bergantung pada sistem pengendalian anda. Iaitu, jika fail JAR dibina pada Windows, ia boleh dijalankan pada mana-mana komputer Windows dengan Java18. Dan ia tidak boleh dilakukan pada Mac dan Linux.


Analisis projek . Tonton selepas selesai!