Die Produktionsumgebung unserer Java Web Application in hat Einschränkungen mehrere Erlaubnisse eingesetzt wird, einer von ihnen nicht in der Lage zu sein in dem Laufwerk C zu schreiben:Extract DLL aus JNA JAR-Datei auf einen benutzerdefinierten Pfad
Wir jna-4.1 vor kurzem hinzugefügt .0.jar und jna-platform-4.1-0.jar Abhängigkeiten in der Lage zu sein, Windows Registry zu lesen, aber ich habe festgestellt, dass jedes Mal, wenn Server (Tomcat v7.0) gestartet wird, eine DLL-Datei in einen temporären Tomcat-Ordner extrahiert wird, geben den folgenden Fehler:
java.lang.UnsatisfiedLinkError: C:\Program Files\Apache Software Foundation\Tomcat 7.0\temp\jna-1319675979\jna1892288885647543043.dll: The handle is invalid
ich, dass das gleiche DLL erfolgreich extrahiert prüft haben Wenn die Zugriffsberechtigungseinschränkung entfernt wurde, um sicherzustellen, dass dies die Quelle meines Problems ist, möchte ich jedoch wissen, ob es einen Pfad gibt, in den diese DLL extrahiert werden muss, da wir in Laufwerk E: schreiben können. beispielsweise.
Jetzt habe ich gesetzt '-Djava.io.tmpdir' meinen benutzerdefinierten Pfad, nennen sie es' E: \ tmp' und jna Bibliothek ist in der Tat dort extrahiert aber ich halte den gleichen Fehler. Das Betriebssystem ist ein Windows 7 Embedded 32-Bit. Fehle ich etwas? –
@SergioMerino könnte auf die Java VM Privilegien in Beziehung gesetzt werden: https://asktom.oracle.com/pls/asktom/f?p=100:11:0::::p11_question_id:952229840241 – cubrr