Windows 10 OSを使用していて、ここで説明するようにJPBC(ペアベース暗号化)を実行しようとします。http://gas.dia.unisa.it/projects/jpbc/buildHowto.html#.WVlWQ4jyhhE。インストールはライブラリではうまくいきましたが、ローカルのmavenリポジトリ.m2 \ repository \ it \ unisa \ dia \ gasに.jarファイルと.javaファイルを含むたくさんのフォルダがあります。ファイルの1つはjpbc-pbcですがもっとありますWindowsを使用したjarライブラリでSystem.loadLibraryを使用する
私はgradleからこれらのファイルのいくつかが必要なプロジェクトをインポートしました。このプロジェクトは、これはエラーをスローし、今ラインに
System.loadLibrary("jpbc-pbc");
が含まれていますCへ
Could not load library jpbc-pbc. JCPABE will be extremely slow.
java.lang.UnsatisfiedLinkError: no jpbc-pbc in java.library.path
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1867)
at java.lang.Runtime.loadLibrary0(Runtime.java:870)
at java.lang.System.loadLibrary(System.java:1122)
at cpabe.Cpabe.<clinit>(Cpabe.java:24)
at cpabe.demo.DemoForCpabe.main(DemoForCpabe.java:63)
私のパス変数のリンク:\プログラムファイル\のJava \ jdk1.8.0_131を。今では私が試してみると、.jarをsrcフォルダに入れるか、またはその両方を入れても、私はこのエラーを受け取ります。 私は何が間違っていますか? jpbc-PBCの
フォルダ構造は
jpbc-pbc
/2.0.0
//jpbc-pbc-2.0.0.jar
/src
//main (and so on)
//test (and so on)
/CMakeLists.txt
/FindGMP.cmake
/FindPBC.cmake
/maven-metadata-local.xml
/pom.xml
'のLoadLibrary()は'ロード用です'.jar'ファイルではなく' .dll'ファイルです。 – Andreas
なぜ彼らはコード内でそれを使用し、.jarファイルとリンクしていますか? 私に代わる方法はありますか? –
Javaコードでは、高性能な暗号化ロジックを実行するために、DLLファイルにネイティブにコンパイルされたコードが必要です。それは警告* "JCPABEが極端に遅くなる" *のことです。高速のネイティブコードがなければ、暗号化はJavaコードを使用して行われますが、そのようなことは非常に遅くなります。 – Andreas