OpenJDK 64位服务器VM警告:您已加载可能已禁用堆栈保护的库

Sam*_*Ben 7 java eclipse debian shared-libraries libpcap

任何人都可以帮助我解决此错误消息.

同时尝试使用jNetpcap API在eclipse中编译项目

我按照下面网站上提到的所有步骤,如何在Debian发行版上设置环境

http://jnetpcap.com/compile/debian

虽然我仍然收到以下错误消息

choosedevice ... OpenJDK 64位服务器VM警告:您已加载库/usr/lib/libjnetpcap.so.1.3.b0003,它可能已禁用堆栈保护.VM将尝试立即修复堆栈防护.强烈建议您使用'execstack -c'修复库,或将其与'-z noexecstack'链接.线程"main"中的异常java.lang.UnsatisfiedLinkError:/usr/lib/libjnetpcap.so.1.3.b0003:/usr/lib/libjnetpcap.so.1.3.b0003:mauvaise classe ELF:ELFCLASS32(可能的原因:架构字宽java.lang.ClassLoader上的java.lang.ClassLoader $ NativeLibrary.load(Native Method)java.lang.ClassLoader.loadLibrary1(ClassLoader.java:1965)java.lang上的java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1890)位于org.jnetpcap.Pcap的java.lang.System.loadLibrary(System.java:1088)的java.lang.Runtime.loadLibrary0(Runtime.java:849)中的.ClassLoader.loadLibrary(ClassLoader.java:1880).(未知来自main.Main_app.main的main.Main_app.choosedevice(Main_app.java:74)(Main_app.java:273)

顺便说一句,我试图执行"execstac -c"它根本不起作用我也花了几天试图找出解决方案,到目前为止我得出的唯一结论是,我需要使用libjnetpcap.so(64因为我的Debian上有64位架构.所以我需要做什么?

PS:我找不到任何".deb"来安装这个64位的库.

rub*_*o77 0

该文件 /usr/lib/libjnetpcap.so.1.3.b0003包含什么内容?

如果该文件是0 字节文件,则确实存在问题,因此请尝试通过重新安装该库来修复系统。

我在 smartgit 中遇到了同样的问题,其中使用了本地配置文件夹中的库,该库以某种方式损坏并且是一个 0 字节文件。因此,删除配置文件夹并重新启动应用程序对我有用。这也可能是一个解决方案。