Eklenti Hata Ayıklama

Eklentinizdeki hataları keşfetmek zorlaştığında, yaptığınız her değişiklik ve günlük çıktıların karmaşıklığında boğulabilirsiniz ve hata ayıklama çok sıkıcı olabilir. Bu nedenle, bu kısım eklentinizi Java’nın hata ayıklama yeteneklerinden yararlanmak için nasıl yararlanabileceğinizi açıklayacak.

Çalışma Alanınız Hazırlanıyor

Hem Sponge’u hem de IDE’nizden eklentinizi çalıştırdığımız için çalışma alanınızdan bir proje gibi hangisini kullanmak istediğinize bağlı olarak ya SpongeForge ya da SpongeVanilla kodunu içeri aktarmanız gerekecektir. Bunu yapmak için yönergeleri ilgili projenin GitHub sayfasında bulabilirsiniz.Burada ilerlemeden önce bu yönergelei izleyin.

Şimdi sizin plugin projenizin yeni oluşturduğunuz SpongeForge/SpongeVanilla projesinde görünür olduğundan emin olmalısınız. Gerekli adımlar IDE’inize bağlıdır.

IntelliJ IDEA

IntelliJ’de her projenin kendi çalışma alanı (ları) vardır. Projenizi ** Sponge (Vanilla) ** projesinde görünür kılmak için bir * Modül * olması gerekir. Projenizi zaten :doc: workspace / idea bölümünde tanımlanan şekilde oluşturduğunuzu varsayarsak, aşağıdaki adımları izleyerek içe aktarın.

  • SpongeVanilla/SpongeForge projesini açın.
  • ``New``i takip eden ``File``a ve sonra ``Module from Existing Sources…``a tıklayın.
  • Eklenti projenizin dizinine gidin.
    • Eğer Gradle kullanıyorsanız, build.gradle dosyasını seçin, bir sonraki diyaloğun içindeki Use auto-import` seçeneğini işaretleyin ve onaylayın.
    • Aksi takdirde, sadece dizinin tamamını seçin ve “Bitir” i tıklayın.
  • Finish’e basın.

Tüyo

Henüz plugin’nizi oluşturmadıysanız, Module from Existing Sources... yerine Module... tıklayınız, ardından projenizi aşağıdaki diyaloğa takiben oluşturunuz.

Tutulma

Projenizi burada tarif edildiği gibi girin: Tutulma ayarlama. SpongeVanilla/SpongeForge projenizde aynı çalışma alanında oldupu sürece projeniz görünür olacaktır.

Sponge sınıf yoluna eklenti eklemek

Bunun arkasındaki fikir, Sponge’yi IDE’nizden normal gibi başlatacağımızdır. Bununla birlikte, aradaki fark, eklentinizi sınıf yoluna ekleyeceğiz. Sponge varsayılan olarak, sınıf yolunda bulunan tüm eklentileri yükleyeceğinden, eklenti projesini Sponge’nin sınıf yoluna ekleyerek, her değişiklikten sonra eser dosyasını yeniden oluşturmanız ve sunucu dizininize kopyalamanız gerekliliğinden kurtulursunuz.

Öncelikli olarak Sponge `README.md <https://github.com/SpongePowered/SpongeForge/blob/stable-6/README.md#Running> dosyasında gösterildiği gibi Çalıştırma/Hata ayıklama Yapılandırma(lar)ınızı uygun bir şekilde sağlamanız gerekmektedir

Ardından, projeyi sınıf yolunuza dahil edecek şekilde Çalıştır / Hata ayıklama Yapılandırmasını düzenlemeniz gerekir. Bunu yeniden nasıl yapacağınız, IDE’nize bağlıdır:

IntelliJ IDEA

  • Proje Yapınızı açın.
    • ``Project Structure…``dan sonra ``File``a tıklayın.
    • Veya Search ikonunun yanında IDE’nin sağ üst köşesindeki ``Project Structure``ikonuna tıklayın.
  • Modules``a tıklayın.``SpongeForge veya SpongeVanilla yı (seçiminize bağlı olarak) genişletin.
  • SpongeForge_main veya SpongeVanilla_main in seçili olduğundan emin olun.
  • Sağ sütundaki ``Dependencies``i seçin.
  • Sütunun altındaki (Add) de ` +` sembolüne tıklayın ve ``Module Dependency``i seçin.
  • ``yourplugin_main``i seçin.
  • Listeye eklendikten sonra modüldeki Export seçeneğini kontrol ETMEYİN.

Tutulma

  • Kendi Çalıştır/Hata ayıkla Düzenlemenizi bulun.
    • ``Run``a ve ardından ``Run Configurations…``a tıklayın
    • Veya Çalıştır/Hata ayıkla ikonunun yanısıra aşağı indirme okuna tıklayın ve sonra ayrı ayrı Run Configurations... veya Debug Configurations... girin.
  • Sol taraftaki Sponge (sunucusu) için kendi Çalıştır/Hata ayıkla konfigürasyonunuzu seçin.
  • Classpath sekmesine geçin.
  • Add Projects... butonundan sonra ``User Entries``i seçin.
  • Eklentinize uygun projeyi seçin.
  • OK butonuna tıklayınız.
  • Sağ alt köşedeki Apply butonuna tıklayın.

Yapılandırmayı Çalıştırma

Önceki adımları izledikten sonra, hata ayıklamaya başlamaya hazır olmanız gerekir. Sunucunuzu IDE’nizden başlatırsanız, çalışma dizini SpongeForge / SpongeVanilla projenizdeki “çalıştır” dizinidir. Genellikle bir sunucu (worlds, configs vb.) Tarafından oluşturulan tüm dosyalar, `` run`` dizininde saklanır ve bir sunucunun .jar dosyasını elle “` el ile kopyaladığınız gibi, yerel test sunucunuzun birden fazla çalışması üzerinde ısrar etmeye devam eder. ` dizinini çalıştırın ve oradan başlatın.

IntelliJ IDEA

Çalıştır / hata ayıklama yapılandırmasını çalıştırmak için Yeşil sağ ok işaretine basmak yerine sağdaki Yeşil simgesini tıklayın, “Hata ayıklama”.

Tutulma

Çalıştır / hata ayıklama konfigürasyonunu çalıştırmak için yeşil sağ ok işaretine basmak yerine Hata ayıklama simgesinin (bir böcek görüntüleyen) aşağı okunu tıklayın ve `` Test (Sunucu) `` yapılandırmanızı tıklayın. Açılır menüde görünmüyorsa, `` Hata Ayıklama Yapılandırmaları`` ‘nı tıklayın. `` Test (Server) `` yapılandırmasını seçin ve sol alttaki “Hata Ayıklama” düğmesine basınız.

Hata ayıklama kullanımı

Sunucunuz (ve Plugin’iniz) Hata Ayıklayıcı’da çalıştığı için tuttuğu özellikleri kullanabilirsiniz. Bunların en önemlileri aşağıda kısaca açıklanmaktadır, ancak bunlar Sponge’ın özellikleri değil, IDE’nizin kullandığı Java Debugger.

Kesme Noktaları

Kesme noktaları, koda daha yakından bakmak için kullanışlı bir araçtır. Bir kesme noktası bir kod satırı veya bir işlevin başında ayarlanabilir. Bir kesme noktasına erişirken, hata ayıklayıcı kod yürütülmesini durduracak ve IDE, geçerli kapsamdaki tüm değişkenlerin içeriğini incelemenize izin veren bir görünüm açacaktır. IDE’nizin hata ayıklama görünümünde buna uygun düğmeye basmadığınız sürece kod yürütmesi devam etmez.

Hata ayıklama devam ederken kesme noktaları da eklenebilir, kaldırılabilir veya geçici olarak devre dışı bırakılabilir.

Tüyo

Tek bi sunucu işareti verilmiş zamandan daha fazla zaman alırsa, bekçi bu sunucunun çöktüğünü düşünür ve onu zorla kapatır. Kırılma noktaları ile çalışırken bu meydana gelebilir, bu nedenle test ortamlarınızı server.properties dosyasını ve max-tick-time değerini çok büyük bir sayıya ayarlamanız tavsiye edilir ( bir işaretin alabileceği milisaniye miktarı) veya ``-1``( Bekçi’yi komple etkisiz kılmak için).

IntelliJ IDEA

Bir kesme noktası eklemek veya çıkarmak için, sadece editörünüzün solundaki boş alana sol tıklayın.

Alternatif olarak, imlecinizi kesme noktasının eklenmesini veya kaldırılmasını istediğiniz satıra getirin ve sonra `` Çalıştır’ı tıklayın ve ardından `` Satır Kesme Noktasını Aç / Kapat ‘’ ı tıklayın.

Tutulma

Bir kesme noktası eklemek veya kaldırmak için, yalnızca düzenleyicinin solundaki boş alanı sağ tıklatın ve ardından `` Toggle Breakpoint`` seçeneğini tıklayın.

Alternatif olarak, imlecinizi kesme noktasının eklenmesini veya kaldırılmasını istediğiniz satıra getirmesini sağlayın ve ardından `` Çalıştır’ı tıklayın ve ardından `` Kesme Kırpma Değiştir ‘’ e tıklayın.

Kod Güncellemesi

Hata ayıklayıcı’nın diğer önemli özelliği, kod değiştirme sayesinde her küçük değişiklik için sunucunuzu yeniden başlatmanızın gerekmemesidir. Bu, hata ayıklayıcıda çalışırken yalnızca kod bölümlerini yeniden derleyebilirsiniz. Bununla birlikte, birkaç sınırlama vardır, bunlardan en önemlileri şunlardır:

  • Methodları oluşturamaz veya kaldıramazsınız.

    • Yöntemlerdeki değişiklikler, yöntemin içindeki * kodu ile sınırlıdır. İmzasını değiştiremezsiniz (adı, dönüş türü ve parametre türleri anlamına gelir)
  • Sınıfları silemezsiniz.

    • Bir sınıfın adını, üst sınıfını veya uyguladığı arabirimlerin listesini değiştiremezsiniz.
    • Sınıf ekleyebilirsiniz. Bununla birlikte, yapı oluşturulduktan ve çalıştırıldıktan sonra, sınıf yukarıdaki kuralları izler.

Bu işlevi test edebilirsiniz: Eklentinize sadece bir kelime yazan basit bir komut verin,``Sponge``gibi. Ardından kaydedin ve sunucuya yukarıda anlatıldığı gibi başlayın. Sponge i çıkartacak komutu çalıştırın. Şimdi komutu konsola farklı bir kelime yazmak üzere değiştirin, dosyayı kaydedin. Bir değişiklikten sonra, Çalışan programdaki değişiklikleri hotswap için aşağıdaki gibi yapın:

IntelliJ IDEA

  • IDE’nin üstünden Run menüsünü açın.
  • İlk kategori sonunun altındaki “Değiştirilen Sınıfları Yeniden Yükle” ye tıklayın.

Tutulma

Hiçbir işlem gerekmedi. Dosyayı kaydettiğiniz anda yeniden oluşturulur ve o anda çalışmakta olan hata ayıklama işlemiyle otomatik olarak çalışırken değiştirilir. Bu varsayılan varsayılan davranışı değiştirmediğiniz sürece, el ile çalıştırmayı tetiklemek zorunda kalmazsınız.