SunLicense

Hangi sınıflar adlarını korumalı?

Jar'ı karartmadan önce eklenti veya mod tanımlayıcınızı yapıştırın. Tarayıcınızda okunur; hiçbir şey yüklenmez.

  • Tarayıcınızda
  • Paper, Spigot, BungeeCord, Velocity, Fabric

Yanıtı görmek için bir tanımlayıcı yapıştırın

plugin.yml, paper-plugin.yml, bungee.yml, velocity-plugin.json veya fabric.mod.json. Ya da Örnekler'den birini seçin.

Her durumda her zaman korunanlar

Manifest'teki Main-Class, META-INF/services sağlayıcıları, olay işleyicileri (@EventHandler, @Subscribe), enum'lar, serileştirilebilir üyeler ve Forge @Mod sınıfları.

Yalnızca sizin bilebileceğiniz şeyler (yansıma, yapılandırma dosyalarındaki adlar)

Adıyla yüklediğiniz sınıflar (Class.forName, reflection, yapılandırma dosyalarınızdaki adlar) ve bir JSON kütüphanesinin adıyla eşlediği alanlar.

Ardından jar'ı ücretsiz bir hesapta karartın.Jar yükle

Aynı eklenti. Okuması çok daha zor.

Sizin kodunuz
public final class AuctionPlugin extends JavaPlugin {
    private final Map<UUID, Listing> listings = new HashMap<>();

    @Override
    public void onEnable() {
        getCommand("ah").setExecutor(new AuctionCommand(this));
    }

    boolean canAfford(Player player, double price) {
        return economy.getBalance(player) >= price;
    }
}
Karartmadan sonra (decompile edilmiş)
public final class AuctionPlugin extends JavaPlugin {
    private final Map<UUID, a> a = new HashMap<>();

    @Override
    public void onEnable() {
        this.getCommand(b.a("\u0d4f\u0d4a")).setExecutor(new c(this));
    }

    boolean a(Player var1, double var2) {
        return d.a.getBalance(var1) >= var2;
    }
}

ProGuard

Sınıfları, alanları ve metotları yeniden adlandırır. Varsayılan; neredeyse her eklentiyle çalışır.

Skidfuscator

Yeniden adlandırmanın üstüne kontrol akışı karartması ve şifreli string'ler ekler.

Maksimum

Önce ProGuard, sonra Skidfuscator: en güçlüsü, ek bir teste değen eklentiler için.

Sorular, yanıtlandı

Bazı sınıflar neden adlarını korumalı?

Sunucu onları tanımlayıcınızdan adıyla yükler: plugin.yml'deki ana sınıf, Fabric giriş noktaları, mixin'ler. Adlarını değiştirirseniz eklenti artık yüklenmez. Geri kalan her şey yeniden adlandırılabilir.

Koruma kurallarını kendim mi yazmalıyım?

Çoğunlukla hayır. SunLicense jar'ınızı okur ve ana sınıfı, Velocity ile BungeeCord main'lerini, Fabric giriş noktalarını ve mixin'leri, servis sağlayıcıları, olay işleyicileri ve enum'ları kendisi korur. Bu denetleyici, Paper bootstrapper'ı gibi size kalanları gösterir.

SunLicense hangi karartıcıları kullanıyor?

ProGuard (varsayılan), yGuard ve kontrol akışı karartması ile string şifreleme ekleyen Skidfuscator; ya da önce ProGuard'ı sonra Skidfuscator'ı çalıştıran Maksimum. Kendi stack trace'lerinizi okumanız için bir eşleme dosyası alırsınız.

Tanımlayıcım yükleniyor mu?

Hayır. Denetleyici onu tarayıcınızda okur; hiçbir şey gönderilmez.

Maliyeti ne kadar?

Free plan ayda 3 karartma içerir; aynı eklenti için lisans anahtarları ve cihaz sınırları da vardır. Lite ve Standard daha fazla çalıştırma içerir.

Karartma rehberini okuyun

Diğer ücretsiz araçlar