2012-06-29 4 views
5

Hallo ich benutze einen Lib Name Hyperic Sigar. Wenn ich meinen Code ausführen zeigt es Fehler,Hyperic Sigar Mac Osx Error -No Bibliothek

Dies ist mein Code:

package pack; 

import org.hyperic.sigar.*; 

public class NetworkData { 
    public static void main(String[] args) { 
    Sigar sigar = new Sigar(); 
    } 

} 

Dies ist die Fehlermeldung:

1 [main] DEBUG Sigar - no libsigar-universal64-macosx.dylib in java.library.path 
org.hyperic.sigar.SigarException: no libsigar-universal64-macosx.dylib in java.library.path 
    at org.hyperic.sigar.Sigar.loadLibrary(Sigar.java:172) 
    at org.hyperic.sigar.Sigar.<clinit>(Sigar.java:100) 
    at pack.NetworkData.main(NetworkData.java:10) 

Entwicklung Im auf Mac OS X Snow Leopard verwenden Eclipse-IDE für Java Entwickler ist einige alte Post gefunden ("no sigar-x86-winnt.dll in java.library.path" error when using Hyperic SIGAR on multi language OS) Der Beitrag sagt, dass ich einen Pfad hinzufügen müssen, wenn ja ... Wie füge ich diesen Pfad in Mac Osx? Hoffen Sie, dass jemand helfen kann ^^

Antwort

3

Zuerst müssen Sie Sigar.jar zu Ihrer Bibliothek hinzufügen, dann fügen Sie .dylib Datei zu Ihrer Bibliothek hinzu (Sie müssen Datei für Ihr Betriebssystem auswählen, was Sie verwenden). In Ihrem Fall sollten Sie libsigar-universal64-macosx.dylib hinzufügen Sie können diese Dateien in "hyperic-sigar-1.6.4/sigar-bin/lib" finden.

2

Ich habe die Lösung, Die Lösung ist eine JAR-Datei (in meinem Fall) zu meinem Projekt hinzufügen. Ist das gleiche Konzept, wenn wir eine Drittanbieter-Bibliothek verwenden, wie zum Beispiel mysql-Treiber für Java. Also in meinem Fall, Ich muss log4j.jar und sigar.jar zu meinem Pfad hinzufügen. Klicken Sie mit der rechten Maustaste auf Ihr Eclipse-Projekt und gehen Sie zu Erstellen Sie Pfad> Build-Pfad konfigurieren> Java-Build-Pfad> Externe JARs hinzufügen und fügen Sie sigar.jar zu Ihrem Projekt hinzu.

2
# to find it later because you will need it ... 
cd ~/Downloads/ 

# or whatever the latest one at the time of reading is ... 
curl https://netix.dl.sourceforge.net/project/sigar/sigar/1.6/hyperic-sigar-1.6.4.zip 

# unpack the package to the tmp dir 
sudo unzip -o /Users/phz/Downloads/hyperic-sigar-1.6.4.zip -d /tmp/ 

# copy the libsigar-universal64-macosx.dylib to your class path dir 
sudo find /tmp/ -name libsigar-universal64-macosx.dylib \ 
    -exec cp -v {} /Library/Java/Extensions/ \; 

# this cmd might be obsolete ... 
# copy the sigar.jar to your class path dir 
sudo find /tmp/ -name sigar*.jar \ 
    -exec cp -v {} /Library/Java/Extensions/ \; 

# set you classpath dir, or add in ~/.bash_profile 
# or even better https://github.com/YordanGeorgiev/ysg-confs 
export CLASSPATH=$CLASSPATH:/Library/Java/Extensions 

# you should not see the error anymore 
cd $my_proj_dir ; sbt compile 

# neither here .. 
cd $my_project_dir ; clear ; sbt "test:testOnly *testClass"