2014-12-10 12 views
6

JNA düzgün yapılandırılmamışsa, Cassandra'nın günlük dosyalarında bir uyarı yazdığını biliyorum. Günlük dosyam (cassandra.log ve system.log) "jna" kelimesini içermez (tüm vakalar kontrol edilir). JNA'nın Cassandra örneğim için doğru şekilde yapılandırıldığını varsayabilir miyim?JNA'nın Cassandra'da etkinleştirilip etkinleştirilmediğini kontrol edin

JNA yapılandırmasının doğru olup olmadığını kontrol etmenin bir yolu var mı?

cevap

4

JNA düzgün yapılandırılmış ise, bu gibi günlüğüne bir mesaj görmeniz gerekir:

Günlüğünüzde Ayrıca
INFO [main] 2014-06-06 15:55:11,664 CLibrary.java (line 121) JNA mlockall successful 

, JNA kütüphanesi sınıf yolu çıkışında görünmelidir:

INFO [main] 2014-06-06 16:47:13,318 CassandraDaemon.java (line 191) Classpath:... 
....:/usr/share/java/jna.jar: 
3

Aşağıda, JNA hatası varsa, hatayı görüntüleyen kod şöyledir:

try 
    { 
     Native.register("c"); 
    } 
    catch (NoClassDefFoundError e) 
    { 
     logger.warn("JNA not found. Native methods will be disabled."); 
     jnaAvailable = false; 
    } 
    catch (UnsatisfiedLinkError e) 
    { 
     logger.warn("JNA link failure, one or more native method will be unavailable."); 
     logger.debug("JNA link failure details: {}", e.getMessage()); 
    } 
    catch (NoSuchMethodError e) 
    { 
     logger.warn("Obsolete version of JNA present; unable to register C library. Upgrade to JNA 3.2.7 or later"); 
     jnaAvailable = false; 
    } 

Sadece Yukarıdakilerden biri için günlüğe kaydeder.

+0

Birkaç farklı özel durum için kontroller ... güzel bitti! – Aaron