Visualizzazione dei risultati da 1 a 8 su 8

Discussione: UnsatisfiedLinkError

  1. #1

    UnsatisfiedLinkError

    Ho creato il file jar della mia applicazione creata con eclipse. Ho fatto ciò tramite export jar file, ma quando provo a far partire questo file mi da questa eccezione "UnsatisfiedLinkError". Sicuramente dipende da una libreria che carico esternamente , però non so come risolvere questo problema. Qualke soluzione??

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: UnsatisfiedLinkError

    Originariamente inviato da Gogeta SSJ87
    Ho creato il file jar della mia applicazione creata con eclipse. Ho fatto ciò tramite export jar file, ma quando provo a far partire questo file mi da questa eccezione "UnsatisfiedLinkError". Sicuramente dipende da una libreria che carico esternamente , però non so come risolvere questo problema. Qualke soluzione??
    Generalmente/tipicamente la cosa più semplice è far sì che il jar principale della applicazione abbia il "manifest" che contiene l'attributo Class-Path per indicare un elenco di URL relativi per referenziare i jar. Quindi tali jar esterni saranno "legati" al jar principale da un percorso relativo.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Ho controllato il manifest del file jar e ci sono vari percorsi. Quello del file esterno però fa riferimento al mio hard disk.

    codice:
    <?xml version="1.0" encoding="UTF-8"?>
    <classpath>
    	<classpathentry kind="src" path="src"/>
    	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
    	<classpathentry kind="lib" path="G:/Documents and Settings/Michele/Desktop/eclipse/progetto/Interfaccia/Lib/CLIPSJNI.jar"/>
    	<classpathentry kind="output" path="bin"/>
    </classpath>
    è il 3 ovvero <classpathentry kind="lib" path="G:/Documents and Settings/Michele/Desktop/eclipse/progetto/Interfaccia/Lib/CLIPSJNI.jar"/>

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da Gogeta SSJ87
    Ho controllato il manifest del file jar e ci sono vari percorsi.
    Quello che hai postato non è il "manifest" del jar .... è un file del progetto in Eclipse. Che se non sbaglio serve solo a lui (Eclipse) per gestire le dipendenze per compilazione/esecuzione da Eclipse.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    Hai ragione , però ho postato quello perchè il manifest del jar ha solo due righe che sono queste :

    Manifest-Version: 1.0
    Main-Class: Interface.KBManager

  6. #6
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da Gogeta SSJ87
    Hai ragione , però ho postato quello perchè il manifest del jar ha solo due righe che sono queste :

    Manifest-Version: 1.0
    Main-Class: Interface.KBManager
    Aggiungigli tu il Class-Path (da Eclipse, ora non ho tempo di verificare ma di sicuro puoi farlo dai suoi wizard).
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  7. #7
    Allora ho ricontrollato meglio l'errore. In pratica l'errore è dovuto ad un file dll che io in eclipse tramite codice riesco a chiamare. Facendolo partire invece come file jar mi da l'errore sopra citato e come spiegazione mi dice proprio

    no jclips in java.library.path, dove quel file è un file dll che io richiamo in eclipse. Come potrei inserire questo file nella java.library.path???

  8. #8
    quando lanci la tua applicazione:

    java -Djava.library.path=percorso/alla/tua/dll -cp tuoJar.jar fully.qualified.class.Name

    oppure fai in modo che la DLL sia nel PATH.
    max

    Silence is better than bullshit.
    @mmarcon
    jHERE, Maps made easy

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.