Görev: CodeGym'tan grafik motoru aracılığıyla bir JavaFX oyunuyla yürütülebilir bir JAR dosyası oluşturmanız gerekir.
Bunun için ihtiyacınız var:
- Depodan çatal https://github.com/CodeGymCC/project-maven
- Projenizin sürümünü bilgisayarınıza indirin. Ardından, pom.xml dosyasıyla çalışacağız .
- Bağımlılıklar ekleyin:
- org.apache.commons:commons-lang3:3.12.0
- org.openjfx:javafx-kontrolleri:18.0.1
- com.codegym: desktop-game-engine:1.0 (bu bağımlılık ayrı bir gönderide ele alınacaktır)
- org.junit.jupiter: junit-jupiter-engine: 5.8.2 (kapsam testi ile)
- Şunlar için eklenti ekleyin:
- com.codegym: desktop-game-engine:1.0 bağımlılığını lib kitaplığından yerel depoya yüklemek (yardım için google);
- maven -compiler-plugin eklentisini değiştirmeden bırakın;
- tüm bağımlılıkları toplayacak (kapsam derlemesi ile) ve bunları derleme sırasında bir dizine ekleyecek bir eklenti;
- oyun kodunu ve bağımlılıkları içeren bir jar dosyası oluşturacak olan maven-jar-plugin eklentisi . Bu eklentide, MANIFEST.MF dosyasını şu bölümleri içerecek şekilde yapılandırmanız gerekir :
Class-Path
,Main-Class
veRsrc-Main-Class
Class-Path
Tüm JAR bağımlılıklarımız .- JAR dosyalarından sınıf yolunu kullanabilen ve ayrıca bir JavaFX uygulamasını başlatabilen bir
Main-Class
sınıf yazılmalıdır .org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader
Rsrc-Main-Class
Oyunun başlangıç sınıfı (com.codegym.games.racer.RacerGame) içinde kayıtlı olmalıdır.- Maven-surefire- eklentisinde , StrangeTest testinin yapı üzerinde çalışmaması için bir yapılandırma yapın . Testlerin geri kalanı çalışmalıdır.
- Yerleşik JAR bağımlılıklarının bir kaynak olduğunu söylemek için bir "kaynaklar" bölümü ekleyin , böylece maven-jar-eklentisi onları lib/ klasöründeki JAR dosyasının içine yerleştirir.
- Değişiklikleri GitHub deponuza yükleyin, bunun bağlantısını öğretmene gönderin.
Kullanışlı:
- Derleme , mvn clean install komutuyla çalıştırılmalıdır .
- Görüntüleme amacıyla oyunun çalıştırılması (Maven üzerinden) mvn javafx:run komutu ile yapılabilir.
- Bazı eklentilerin fazı geçersiz kılması gerekir .
- Proje, JDK sürüm 18.0.1'i kullanıyor. Bilgisayarınıza indirilmelidir.
- Maven aracılığıyla inşa ederken, ilk başta hatalar olacaktır. Onları dikkatlice okuyun ve hayatınızı kolaylaştıracaksınız.
- org.Eclipse.jdt.internal.jarinjarloader paketindeki hiçbir şeyi değiştirmeyin . JavaFX uygulamasını başlatmak için ana yöntemin başlatılmasının değiştirildiği özel bir yükleyici sınıfına (dürüstçe StackOverflow'tan kopyalanmıştır) sahiptir. Yalnızca eğitim amaçlı kullanın.
- Tüm noktaları tamamlarsanız, derleme sonucunda bir fat-JAR dosyası alacaksınız . Şu komutla her şeyin doğru şekilde yapılıp yapılmadığını kontrol edebilir ve başlatabilirsiniz:
<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"
- Sonuç olarak şunları göreceksiniz:
- Yapı, işletim sisteminize bağlıdır. Yani, bir JAR dosyası Windows'ta oluşturulmuşsa, Java18 ile herhangi bir Windows bilgisayarda çalıştırılabilir. Ve Mac ve Linux'ta yapılamaz.
Proje analizi . Bitirdikten sonra izleyin!
GO TO FULL VERSION