java-Exception:关于 no *** in java.library.path 异常的解决办法

solve the exception : no *** in java.library.path

在eclipse或myeclipse中,遇到 no xxx in java.library.path 这种异常的解决办法

引发这种异常是因为环境变量未指向xxx所在的文件,在JAVA开发中一般指bin目录下的.dll文件

  • 解决方法一:

    在系统中添加环境变量,指定xxx所在的文件

  • 解决方法二:

    查看系统中的环境变量,将xxx所在文件复制到环境变量指向的位置; 在JAVA中可以通过

    System.getProperty("java.library.path")
    来查看环境变量;


示例

这里以

Exception in thread "main" java.lang.UnsatisfiedLinkError: no jpcap in java.library.path
为例

以下是eclipse所报的异常:

Exception in thread "main" java.lang.UnsatisfiedLinkError: no jpcap 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 jpcap.JpcapCaptor.(JpcapCaptor.java:251)
	at jpcap.JPcapTest.main(JPcapTest.java:10)
	

这里是因为jpcap.dll文件未能通过环境变量找到所引发的异常。(当然,jpcap.jar文件导入正常,所以编写时没有异常,但在运行时,JVM会将.java文件编译为.class文件,需要依赖jpcap的class文件,一般为jre目录下的bin目录下的.dll文件。依赖的jpcap的class文件便是jpcap.dll文件,所以将环境变量指向jpcap.dll文件即可解决)

  • 解决方法一:

    通过设置系统环境变量path来解决(要在设置好系统环境变量后重启Eclipse才能生效)

    • 设置JPCAP_PATH,找到jpcap.dll文件,将其所在文件夹路径设置到JPCAP_PATH中
      java-Exception:关于 no *** in java.library.path 异常的解决办法_第1张图片
    • 将JPCAP_PATH变量设置到系统变量Path中
      java-Exception:关于 no *** in java.library.path 异常的解决办法_第2张图片
  • 解决方法二:

    将jpcap.dll文件放入已经设置好的环境变量path的路径(无需重启Eclipse,建议将文件放到对应jre路径下的bin文件,与jre保持同步)

    查看系统环境变量Path或在JVM中运行如下JAVA代码:

    		String[] split = System.getProperty("java.library.path").split(";");
    		for (String string : split) {
    			System.out.println(string);
    		}
    						

    运行代码如下:

    		C:\Program Files\Java\jdk1.8.0_111\bin
    		C:\Windows\Sun\Java\bin
    		C:\Windows\system32
    		C:\Windows
    		C:/Program Files/Java/jdk1.8.0_111/bin/../jre/bin/server
    		C:/Program Files/Java/jdk1.8.0_111/bin/../jre/bin
    		C:/Program Files/Java/jdk1.8.0_111/bin/../jre/lib/amd64
    		C:\Windows\SysWOW64
    		C:\Program Files\Java\jdk1.8.0_111\bin
    		C:\Program Files\Java\jdk1.8.0_111\jre\bin
    		C:\ProgramData\Oracle\Java\javapath
    		D:\Program Files\Java\jdk1.7.0_21\D:\Program Files\Java\jdk1.7.0_21\bin
    		D:\Program Files\Java\jdk1.7.0_21\D:\Program Files\Java\jdk1.7.0_21\jre\bin
    		C:\Windows\system32
    		C:\Windows
    						

    输出的结果便是配置好的环境变量,将jpcap.dll文件复制到其中任意一个路径中即可

你可能感兴趣的:(java,Exception篇)