SORU
10 Aralık 2009, PERŞEMBE


İnetAddress.() getLocalHost UnknownHostException atar


Farklı işletim sistemleri üzerinde bizim server-uygulama (Java ile yazılmış) Test ve OpenSolaris (2008.11) az zahmetli olur, çok iyi Java entegrasyonu nedeniyle, ben ve o. Ben bir UnknownHostException sonunda yanıldığım ortaya çıktı

try {
  computerName = InetAddress.getLocalHost().getHostName();
  if (computerName.indexOf(".") > -1)
    computerName = computerName.substring(0,
        computerName.indexOf(".")).toUpperCase();
} catch (UnknownHostException e) {
  e.printStackTrace();
}

Çıktı

java.net.UnknownHostException: desvearth01: desvearth01
    at java.net.InetAddress.getLocalHost(InetAddress.java:1353)

Ancak, nslookup desvearth01 doğru IP adresini döndürür, ve nslookup localhost beklendiği gibi 127.0.0.1 döndürür. Ayrıca, aynı kodu tam olarak FreeBSD üzerinde çalışır. Hiçbir şeyin farkında olmadığımı OpenSolaris için özel biri var mı?

Herhangi bir ipucu, teşekkürler.

CEVAP
10 Aralık 2009, PERŞEMBE


İyi geleneğinde kendi soruma yine cevap verebilirim:

InetAddress.getLocalHost() /etc/resolv yok sayıyor gibi görünüyor.ama conf /etc/ana dosyaya bakar localhost dışında bir şey belirtilen etmemiştim. IP ekleme ve bu dosya için hostname sorunu çözer ve İstisna yok.


Yukarıda cevap neredeyse doğru ve yukarıdan ipucu aldım ve sorunum çözüldü. Teşekkürler.

Ama bu geliştirmek için, adım-tarafından-adım değişiklikleri, hatta saf kullanıcılar için yararlı olacağını ekliyorum.

Adımlar:

  • Aç /etc/ana girişler aşağıdaki gibi görünebilir.

    127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4  
    ::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
    
  • vı gibi herhangi bir editör tarafından bu yukarıda bir satır ekle ya da gedit gerekir. <your-machine-ip> <your-machine-name> localhost (örn.

    192.168.1.73 my_foo localhost
    

Şimdi, genel dosya bu gibi görünebilir:

192.168.1.73 my_foo localhost
127.0.0.1    localhost localhost.localdomain localhost4 localhost4.localdomain4
::1          localhost localhost.localdomain localhost6 localhost6.localdomain6
  • Sadece Kaydet ve tekrar Çalıştır java kod...işin bitti.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Autocar

    Autocar

    11 Mart 2006
  • mliskIT

    mliskIT

    29 Mart 2012
  • Schmittastic Jr.

    Schmittastic

    19 Mart 2013