我已经启动了一个java项目。我想使用一个叫做PDFnet的库。但它带来了错误。我在哪里做错了?
public class MainClass {
public static void main(String[] args)
{ //System.out.println(System.getProperty("java.library.path"));
//System.loadLibrary("C:\\Users\\BDagli\\Downloads\\PDFNetC64\\Lib\\PDFNet");
boolean uninstallPrinterWhenDone = false; // change this to test the uninstallation functions
PDFNet.initialize();C:\Program Files\Java\jre7\bin;C:\WINDOWS\Sun\Java\bin;Files\Java\jdk1.7.0_71\bin;.....
Exception in thread "main" java.lang.UnsatisfiedLinkError: no PDFNetC in java.library.path
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at pdftron.PDF.PDFNet.<clinit>(PDFNet.java:21)
at com.pdf.net.MainClass.main(MainClass.java:19)发布于 2014-10-24 16:33:16
我不建议在System32文件夹中放置任何dll (没有很好的理由)。至少,您可以使用您不打算使用的库,因为System32可能是一个更高优先级的库加载文件夹。至少,使用PATH环境变量来指定PDFNetC.dll所在的文件夹。
但是最好是‘解决’这个问题.如果您查看PDFNet附带的Java,您将在所有JAVA文件夹中看到以下文件,RunText.bat,它执行以下操作。
@echo off
setlocal
set TEST_NAME=DigitalSignaturesTest
javac.exe -cp .;../../../Lib/PDFNet.jar *.java
java.exe -Djava.library.path=../../../Lib -classpath .;../../../Lib/PDFNet.jar %TEST_NAME%
endlocal因此,您只需要将java.library.path设置为PDFNetC.dll位于IDE中的文件夹。我不知道如何在IDE中设置它,但我确信很容易找到它。
这是我在google上找到的第一个链接,它更好地描述了这个变量。http://www.coderanch.com/t/377174/java/java/java-library-path
发布于 2014-10-24 14:18:35
我使用Eclipse作为IDE。然后我又加了。够了吗?我没有多少经验

我解决了。
我将PDFNetC.dll放入C:\Windows\System32 32中
发布于 2021-07-30 18:52:09
如果任何使用Eclipse的人都会来这里,请确保导入PDFNet.jar指定了Eclipse中的Native library location,如下所示:

上面我在Native library location中指定的目录包含PDFNetC.dll (或PDFNetC.so用于Linux,PDFNetC.dylib用于Mac)。
您可以通过以下方式访问Java构建路径:

https://stackoverflow.com/questions/26549577
复制相似问题