2013-04-28 11 views
5

Attualmente sto cercando di utilizzare Sigar in un Maven-build, e si dice ogni volta:Utilizzando SIGAR con Maven

"org.hyperic.sigar.SigarException: no libsigar-x86-linux.so in java. library.path "

Ho installato Sigar su Maven con installazione mvn: install-file -DgroupId = org.hyperic -DartifactId = sigar -Dversion = 1.6.4 -Dpackaging = jar -Dfile = sigar.jar (dove sigar.jar è un jar solo con i file nella cartella org e la dipendenza Maven con le cose nella cartella lib), ma poi non trova il file .so.

Ho provato a trovare le risposte, che per lo più dicono che uno dovrebbe decomprimere i file come Unzip dependency in maven. La decompressione (dopo aver installato le altre cose tramite install: install-file) funziona bene, ma il file non è incluso nel percorso dopo tutto.

Quindi ho cercato di trovare qualcosa per includere i file nel percorso di generazione, quindi ho fatto qualcosa di simile: Surefire JUnit Testing using Native Libraries (Voglio usare sigar nei test), ma anche questo non cambia nulla. Ho provato con molte cartelle diverse, e anche l'aggiunta del file stesso e non la cartella è dentro al percorso della libreria, ma anche questo:

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-surefire-plugin</artifactId> 
    <configuration> 
    <forkMode>once</forkMode> 
    <argLine>-Djava.library.path=${project.build.directory}/lib/libsigar-x86-linux.so</argLine> 
    </configuration> 
</plugin> 

non funziona, ma il file è chiaramente lì. Sto usando Maven 2.2.1.

Qualcuno ha un suggerimento su come ottenere sigar in questo contesto di lavoro?

Grazie in anticipo, DaGeRe

risposta

0

Uso plug infallibile non è necessario anteporre gli argomenti con 'D' di prefisso (ad esempio - -java.library.path = $ {} project.build.directory/lib/libsigar-x86-linux.so).

+2

Grazie per il consiglio, ma la risposta alla domanda è stata, dopo alcuni tentativi e google di nuovo, di aggiungere target alla configurazione. Ho pensato che $ {project.build.directory} avrebbe incluso questo, ma non è così. –

+0

@DavidReichelt: perché non pubblichi questo come una tua risposta e lo accetti? – lakshman