Çözüldü PLUGİN GÜNCELLENMİYOR ! yardım edin lütfen

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Hala bıkmadan sıkılmadan yardım ettiğin için saol
Main =>
Değerli ziyaretçimiz, içeriği görebilmek için şimdi giriş yapın veya kayıt olun.

Eventler =>
Değerli ziyaretçimiz, içeriği görebilmek için şimdi giriş yapın veya kayıt olun.

YML =>
Değerli ziyaretçimiz, içeriği görebilmek için şimdi giriş yapın veya kayıt olun.

@SilentCobbra
Proje size göre, yani başlangıç seviyesi için karışık bir vaziyette görünüyor.

Şimdi size tarif etmeye çalışacağım;

* Yeni bir proje oluşturun, ismini TestPlugin yapın. org.TestPlugin adında bir Package oluşturun. Package'a Main adında bir class oluşturun.

* Plugin.yml - Bu dosyayı da org.TestPlugin ile aynı yerde oluşturun, yani src'den direkt olarak oluşturun.

Kod:
name: TestPlugin
version: 1.0.0
main: org.TestPlugin.Main

* Main.class - Burayı fazla gösteremeyeceğim, import edilmesi gerekenleri edin.

Kod:
package org.TestPlugin;

public class Main extends JavaPlugin {

public void onEnable() {
Bukkit.getServer().getPluginManager(). registerEvents(this, this);
}

public void onDisable {

}
}

* Event sınıfı - şimdilik Main ile aynı yerde tutun, eğer başarabilirsek seve seve göstereceğim.

Eventleri nasıl ekleyeceğinizi az çok biliyorsunuz;

Kod:
@EventHandler
public void onJoin(PlayerJoinEvent event) {

}

Bütün bunları yaptıktan sonra export edin ve deneyin.

Telefon üzerinden destek olmaya çalıştığım için kodda hatalar bulunabilir çok özenmedım.
 
Dediğini yaptım konsol da pl arattım plugin 0 dedi tekrardan loglara baktım geçersiz yml dosyası dedi

[21:38:20] [Server thread/ERROR]: Could not load 'plugins\TestPlugin-1.0-SNAPSHOT.jar' in folder 'plugins'
org.bukkit.plugin.InvalidDescriptionException: Invalid plugin.yml
at org.bukkit.plugin.java.JavaPluginLoader.getPluginDescription(JavaPluginLoader.java:170) ~[spigot.jar:3096a-Spigot-9fb885e-af1a232]

intellijde spigot plugin için ayrı bir uzantı var oradan yapıyorum o uzantı kendisi yml dosyasını kuruyo ve içini dolduruyo o yüzden geçersiz dedi sanırım
 
Plugin.yml ekran görüntüsü iletin.
 
Hiç İntellij kullanmadığım için uzantılar v.b nasıl işliyor bilmiyorum. Normal şartlarda kullandığım yöntemde bir sorun göremiyorum, daha fazla yapabileceğim bir şey yok maalesef.
önceki projemde bir sıkıntı yoktu sadece dünyada çalışacak olan kodlar çalışmıyordu
 
Eventi registerlamamışsın. Eventi registerlamak için eventin olduğu sınıfta bir constructor açabilir ve onu onEnable Kısmında kullanabilirsin. Register işlemini ise event classının içinde açmış olduğun constructor içinde yapıcaksın. Örneğin
Sınıfımız JoinListener için

public class JoinListener implements Listener {

private Main main;

public JoinListener(Main main) {
this.main = main;
Bukkit.getPluginManager().registerEvents(this, main);
}


}
Ayrıca eventin bulunduğu sınıf Listener implementlemeli, yoksa eventin çalışıp çalışmadığını sunucu anlayamaz.
Bu kullanımı yaptıktan sonra tek yapman gereken main classındaki onEnable() methodunda şöyle bir kullanım yapmak:

public void onEnable() {
new JoinListener(this);
}
böylece event kaydedilmiş olacak ve çalışacak.
Plugin.yml konusuna gelirsek Örnek bir Plugin.yml vericem:
name: RemielSkyblockCore
version: '${version}'
main: me.taylan.RemielSkyblockCore
api-version: '1.19'
authors: [Taylan]
description: Remiel Skyblock için Core eklenti

Bu şekilde bir kullanım olmalı, api version sunucu sürümüne uygun olmalı, böylece kodunuz son sürüm paper veya spigot api a göre compile edilir. Plugin.yml için ek kullanımlar hakkında bilgi almak isterseniz
Değerli ziyaretçimiz, içeriği görebilmek için şimdi giriş yapın veya kayıt olun.
 
Ayrıca javayı ve bukkit apiyi başlangıç seviyesinde bilmiyorsanız asla ama asla eklenti yazmaya başlamayın, bu sadece zaman kaybı olacaktır. Yapay zekanın arkasına sığınmak biraz sıkıntı bir şey çünkü eninde sonunda sizin de eklentiyi yazmadan önce bir plan yapmanız gerekicek ve bu planlamayı yazıcağınız kodları düşünerek yapıcaksınız.
 
Eventi registerlamamışsın. Eventi registerlamak için eventin olduğu sınıfta bir constructor açabilir ve onu onEnable Kısmında kullanabilirsin. Register işlemini ise event classının içinde açmış olduğun constructor içinde yapıcaksın. Örneğin
Sınıfımız JoinListener için

public class JoinListener implements Listener {

private Main main;

public JoinListener(Main main) {
this.main = main;
Bukkit.getPluginManager().registerEvents(this, main);
}


}
Ayrıca eventin bulunduğu sınıf Listener implementlemeli, yoksa eventin çalışıp çalışmadığını sunucu anlayamaz.
Bu kullanımı yaptıktan sonra tek yapman gereken main classındaki onEnable() methodunda şöyle bir kullanım yapmak:

public void onEnable() {
new JoinListener(this);
}
böylece event kaydedilmiş olacak ve çalışacak.
Plugin.yml konusuna gelirsek Örnek bir Plugin.yml vericem:
name: RemielSkyblockCore
version: '${version}'
main: me.taylan.RemielSkyblockCore
api-version: '1.19'
authors: [Taylan]
description: Remiel Skyblock için Core eklenti

Bu şekilde bir kullanım olmalı, api version sunucu sürümüne uygun olmalı, böylece kodunuz son sürüm paper veya spigot api a göre compile edilir. Plugin.yml için ek kullanımlar hakkında bilgi almak isterseniz
Değerli ziyaretçimiz, içeriği görebilmek için şimdi giriş yapın veya kayıt olun.
saol denicem şimdi
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

Hala Discord sunucumuza katılmadın mı?

Büyük bir topluluğun parçası ol, etkinliklere katıl ve özel hediyeler kazanma şansı yakala!

Şimdi Katıl
Üst