Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/316.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 发生JNI错误(jdeveloper12c)_Java_Java Native Interface - Fatal编程技术网

Java 发生JNI错误(jdeveloper12c)

Java 发生JNI错误(jdeveloper12c),java,java-native-interface,Java,Java Native Interface,我正在尝试构建一个使用外部库的Java桌面应用程序 该项目在IDEJDeveloper12C中运行良好,但当我进行部署时,我会看到 错误:发生JNI错误,请检查安装并重试。线程“main”java.lang.NoClassDefFoundError中出现异常:orf/icepdf/core 我在projectproperties->Deployment->Profile Tupe:JAR File->Main Class:My Class->File Groups->New Packaging-

我正在尝试构建一个使用外部库的Java桌面应用程序

该项目在IDEJDeveloper12C中运行良好,但当我进行部署时,我会看到

错误:发生JNI错误,请检查安装并重试。线程“main”java.lang.NoClassDefFoundError中出现异常:orf/icepdf/core

我在project
properties->Deployment->Profile Tupe:JAR File->Main Class:My Class->File Groups->New Packaging->Contributors->Add My JAR
中插入并创建部署

我还尝试在项目
properties->Deployment->Profile Tupe:JAR File->Main-Class:My-Class->File-Groups->New-Libraries>中创建部署,但在这两种情况下我都得到了错误

编辑:错误附近的代码:

publicstaticvoidsetup()引发IOException{
JFrame=新JFrame(“PDF测试”);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
PagePanel=新建PagePanel();frame.add(面板);
frame.pack();
frame.setVisible(true);
File File=新文件(“c://test.pdf”);
RandomAccessFile raf=新的RandomAccessFile(文件“r”);
FileChannel=raf.getChannel();
ByteBuffer buf=channel.map(FileChannel.MapMode.READ_ONLY,0,channel.size());
Pdfile Pdfile=新Pdfile(buf);
PDFPage page=pdffile.getPage(0);
panel.setClip(空);
panel.useZoomTool(true);
面板显示页(第页);
}
错误:

C:\JDeveloper\mywork\borrar4\Client\deploy>java -jar archive3.jar
Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: com/sun/p
dfview/PDFPage
        at java.lang.Class.getDeclaredMethods0(Native Method)
        at java.lang.Class.privateGetDeclaredMethods(Unknown Source)
        at java.lang.Class.getDeclaredMethod(Unknown Source)
        at java.awt.Component.isCoalesceEventsOverriden(Unknown Source)
        at java.awt.Component.access$500(Unknown Source)
        at java.awt.Component$3.run(Unknown Source)
        at java.awt.Component$3.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.awt.Component.checkCoalescing(Unknown Source)
        at java.awt.Component.<init>(Unknown Source)
        at java.awt.Container.<init>(Unknown Source)
        at javax.swing.JComponent.<init>(Unknown Source)
        at javax.swing.JPanel.<init>(Unknown Source)
        at javax.swing.JPanel.<init>(Unknown Source)
        at javax.swing.JPanel.<init>(Unknown Source)
        at client.PagePanel.<init>(PagePanel.java:77)
        at client.VerPdfSimplePage.setup(VerPdfSimplePage.java:29)
        at client.VerPdfSimplePage$1.run(VerPdfSimplePage.java:57)
        at java.awt.event.InvocationEvent.dispatch(Unknown Source)
        at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
        at java.awt.EventQueue.access$500(Unknown Source)
        at java.awt.EventQueue$3.run(Unknown Source)
        at java.awt.EventQueue$3.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Sour
ce)
        at java.awt.EventQueue.dispatchEvent(Unknown Source)
        at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
        at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
        at java.awt.EventDispatchThread.run(Unknown Source)
Caused by: java.lang.ClassNotFoundException: com.sun.pdfview.PDFPage
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        ... 32 more

C:\JDeveloper\mywork\borrar4\Client\deploy>

C:\JDeveloper\mywork\borrar4\Client\deploy>java-jar archive3.jar
线程“AWT-EventQueue-0”java.lang.NoClassDefFoundError中出现异常:com/sun/p
dfview/PDFPage
位于java.lang.Class.getDeclaredMethods0(本机方法)
位于java.lang.Class.privateGetDeclaredMethods(未知源)
位于java.lang.Class.getDeclaredMethod(未知源)
位于java.awt.Component.isCoalesceEventsOverriden(未知源)
位于java.awt.Component.access的$500(未知来源)
位于java.awt.Component$3.run(未知源)
位于java.awt.Component$3.run(未知源)
位于java.security.AccessController.doPrivileged(本机方法)
在java.awt.Component.checkCoalescing(未知源代码)
位于java.awt.Component。(未知源)
位于java.awt.Container。(未知源)
位于javax.swing.JComponent。(未知源)
在javax.swing.JPanel(未知来源)
在javax.swing.JPanel(未知来源)
在javax.swing.JPanel(未知来源)
在client.PagePanel.(PagePanel.java:77)
位于client.VerPdfSimplePage.setup(VerPdfSimplePage.java:29)
位于client.VerPdfSimplePage$1.run(VerPdfSimplePage.java:57)
在java.awt.event.InvocationEvent.dispatch(未知源)处
位于java.awt.EventQueue.dispatchEventImpl(未知源)
位于java.awt.EventQueue.access$500(未知源)
在java.awt.EventQueue$3.run处(未知源)
在java.awt.EventQueue$3.run处(未知源)
位于java.security.AccessController.doPrivileged(本机方法)
位于java.security.ProtectionDomain$1.doIntersectionPrivilege(未知)
(行政长官)
位于java.awt.EventQueue.dispatchEvent(未知源)
位于java.awt.EventDispatchThread.pumpOneEventForFilters(未知源)
位于java.awt.EventDispatchThread.pumpEventsForFilter(未知源)
位于java.awt.EventDispatchThread.pumpEventsForHierarchy(未知源)
位于java.awt.EventDispatchThread.pumpEvents(未知源)
位于java.awt.EventDispatchThread.pumpEvents(未知源)
位于java.awt.EventDispatchThread.run(未知源)
原因:java.lang.ClassNotFoundException:com.sun.pdfview.PDFPage
位于java.net.URLClassLoader.findClass(未知源)
位于java.lang.ClassLoader.loadClass(未知源)
位于sun.misc.Launcher$AppClassLoader.loadClass(未知源)
位于java.lang.ClassLoader.loadClass(未知源)
... 32多

C:\JDeveloper\mywork\borrar4\Client\deploy>

在JDeveloper IDE 12c中,问题是开发部署。当我通过CMD运行生成的jar时,控制台给出了错误。有了jdeveloper 11,我可以选择在jdeveloper 12c中开发“依赖性分析系统”的部署。我没有找到这个选项。

请显示一些代码,特别是在错误消息谈论的地方附近。我尝试使用PDFView使用这个新的代码库来显示一个简单的pdf,但我得到了相同的错误。代码在ide jdeveloper 12c上运行时没有错误,但我无法在jdeveloper 12c生成一个包含库的jar,jar将它们打包到构建项目中,以通过cmd.public static void setup()运行,抛出IOException{JFrame frame frame=new JFrame(“PDF Test”);frame.setDefaultCloseOperation(JFrame.EXIT_on_CLOSE);PagePanel panel=new PagePanel();frame.add(panel);frame.pack();frame.setVisible(true);File File=new File(“c://test.pdf”);RandomAccessFile raf=new RandomAccessFile(File,“r”);FileChannel channel=raf.getChannel();ByteBuffer buf=channel.map(FileChannel.MapMode.READ,0,channel.size();PDFFile PDFFile=new PDFFile(buf);PDFPage page=pdffile.getPage(0);panel.setClip(null);panel.useZoomTool(true);panel.showPage(page);}C:\JDeveloper\mywork\borrar4\Client\deploy>java-jar archive3.jar线程“AWT-EventQueue-0”java.lang.NoClassDefFoundError:com/sun/dfview/PDFPage at java.lang.Class.getDeclaredMethods0(本机方法)java.awt.Component.isCoalesceEventsOverriden(未知源)java.awt.Component.isCoalesceEventsOverriden(未知源)java.awt.Component.access$500(未知源)java.awt.Component$3.run(未知源)java.awt.Component$3.run(未知来源)…José:我编辑了原始消息并在那里添加了代码。如果你能再次编辑它,并添加完整的er