1. 程式人生 > >Linux執行jnetpcap程式(含配置步驟)

Linux執行jnetpcap程式(含配置步驟)

最美好的事情莫過於栽跟頭,停下來填好坑後,告訴後來人:小心,這裡有毒!

但是在linux下出現的 ”異常 / 報錯 / 警告“ 就真的是千奇百怪了:

比如最常見的兩個報錯:

》java.lang.UnsatisfiedLinkError: no jnetpcap in java.library.path

》jnetpcap com.slytechs.library.NativeLibrary.dlopen(Ljava/lang/String;)J

博主從以下幾個方面開始填坑啦~啦啦啦:

  1. Linux下libpcap的安裝(jnetpcap第一步)
  2. 安裝jnetpcap
  3. 編輯器(intellij idea / ecplise)的配置

一. Linux下libpcap的安裝

我寫了一個一鍵安裝的指令碼,歡迎大家下載:

下載後執行下面的操作後,就完成安裝了:

》》sudo add_libpcap.sh

》》輸入使用者密碼

其中要注意的是安裝順序不要搞錯:

  1. m4
  2. bison
  3. flex
  4. libpcap

對每個安裝包都要執行

sudo ./configure #對即將安裝的軟體進行基礎的配置與滿足依賴關係的驗證

sudo make #編譯

sudo make install #安裝

二. 安裝jnetpcap

官網連結:jnetpcap.com (但是我始終連不上去,所以下面提供一個jnetpcap的下載地址)

裡面有很多不同的安裝檔案,因為我是64位的ubuntu17.04的系統,因此我就下載

jnetpcap-1.3.0-1.ubuntu.x86_64.tgz

(注意:jnetpcap已經有了更高版本1.4.x了,但是我至今仍未解決安裝1.4.x的時候的各種報錯,因此如果不是特殊要求,請安裝1.3.0)

下載到本地之後開啟安裝包,看到這些,就能夠進行下一步了:


三. 編輯器的配置

配置編輯器只有兩步:

  1. 為當前專案匯入jar包(流程根據編輯器的不同而不同)
  2. 把共享庫(windows下是.dll檔案,Linux下是.so檔案)匯入到jdk中

主流的是ecplise和intellij IDEA,這裡我拿我的編輯器intellij IDEA來舉例,ecplise的兄弟們可以參考這篇部落格:

1.匯入jar包:

左上角 File -》Project Structure 點出這個視窗:


左邊第二項 - 》中間第一項(就一項)-》右邊點一下“+”號 -》選擇第一項,點一下

然後找到從剛才的壓縮包裡提取出來的.jar包(只是剛才圖片中顯示的壓縮包內容中的jnetpcap.jar這個檔案):


點選OK後記得在視窗中把小對勾勾選上:


然後第一步就完成了,點選下面的Apply和OK就可以了

2.把共享庫(windows下是.dll檔案,Linux下是.so檔案)匯入到jdk中

還是剛才的圖片:

這裡面有一個libjnetpcap.so檔案,把它複製,貼上到jdk/jre/lib/amd64中去就可以啦:


然後在編輯器中就可以正常的匯入jnetpcap的包,並且在執行中不會有各種奇葩報錯了

如果任性的下載了jnetpcap1.4.x的朋友們可能會發現,裡面有兩個.so的檔案,即便全部放在lib庫中依舊是該怎麼報錯怎麼報。。。。這就很尷尬了。。

相關推薦

Linux執行jnetpcap程式配置步驟

最美好的事情莫過於栽跟頭,停下來填好坑後,告訴後來人:小心,這裡有毒! 但是在linux下出現的 ”異常 / 報錯 / 警告“ 就真的是千奇百怪了: 比如最常見的兩個報錯: 》java.lang.U

atuodesk下載教程安裝步驟

1.本站壓縮包,獲得安裝包和補丁,雙擊MFAA_2019_FCS_Multilingual_Win_64bit_dlm.sfx.exe,,點確定開始解壓安裝包,可以選擇修改解壓目錄2.開始壓縮3.點安裝4.接受協議,點下一步5.輸入序列號666-69696969產品密匙:Autodesk Moldflow

Linux shell指令碼013生成配置檔案

#!/bin/bash #生成配置檔案auto-ops.conf的中介軟體配置項,要求auto-ops.conf檔案已經存在 #usage ./scriptname apahce 1.1.1.1 tomcat 1.1.1.2 jboss 1.1.1.3 ###引數規範性校驗 ###

圖解如何將Ubuntu上的Qt程式交叉編譯出可在ARM平臺執行程式五部曲

圖解如何將Ubuntu上的Qt程式交叉編譯出可在ARM平臺執行的程式(五部曲) (原創作品,轉載時請註明出處,商業用途前應徵得作者同意) 作者: devinoy(百度使用者) 日期:2012-10-16 版本:V1.00 Ubuntu(以ubuntu12.04為例,

使用QtConcurrent編寫多執行程式也可以阻塞

版權宣告:本文為博主原創文章,未經博主允許不得轉載。 https://blog.csdn.net/Amnes1a/article/details/66470751Qt在其QtConcurrent名稱空間中為我們提供了編寫多執行緒程式的高階API,使用這個API可以使我們在不使用低階的執行緒元素,如互斥鎖,讀寫

Centos命令列執行Java程式引入外部Jar

本文講的東西比較膚淺,高手們請路過,有不準確的地方,歡迎交流指正。 最近在windows下寫了一個java程式,需要拿到centos系統中執行,本人在虛擬機器上安裝了centos系統,鼓搗了半天,翻閱了一下資料,有些東西記錄一下,以便自己查閱,供有有興趣人蔘考。 首先,確

命令列執行java程式windows環境下

首先要說明以下,本人寫博不多,原來在Iteye寫一些自己遇到的問題,但發現它的編輯工具真是太落後了,格式經常出問題不說, 它的可見既所得編寫模式就是shit,編寫完之後格式亂的一沓糊塗。 所以,移到CSDN來吧,雖然作為一個JAVA programmer,原來的jav

雲伺服器 ECS Linux 磁碟空間滿inode滿問題排查方法

問題描述在雲伺服器ECS Linux系統內建立檔案時,出現類似如下空間不足提示:No space left on device …問題原因導致該問題的可能原因包括:磁碟分割槽空間使用率達到百分之百。磁碟分割槽inode使用率達到百分之百。殭屍檔案:已刪除檔案因控制代碼被佔用未

自主開發linux下的WeChat圖形介面

主要技術: 主要用到的技術有,udp socket, C++ stl容器,生產者消費者模型, shell指令碼程式設計,json 序列化和反序列化,ncurses 終端介面設計等 結果展示:

如何用 pipenv 克隆 Python 教程程式碼執行環境?視訊講解

咱們的 Python 教程程式碼已經可以免安裝線上運行了。但如果你希望在本地克隆執行環境,請參考

linux下如何執行c++程式包括呼叫外部函式庫

這個問題困擾了我好久,但在網路上搜索很久也沒有找到具體的,條理清晰的一篇。所以,自己動手豐衣足食(拖拖拖了一個月。。) 執行c++程式 事實證明gcc是理解不了c++的。。 用g++執行你的程式,比如:g++ main.cpp g++產生一個.out

linux執行應用程式not found問題交叉編譯生成的可執行檔案

[email protected]:~/Desktop/em35x-ezsp$readelf -a build/ZigBee/ZigBee |grep NEEDED  0x00000001 (NEEDED)                     Shared library: [libreadli

caffe學習:py-faster-rcnn配置執行測試程式Ubuntu

上一篇部落格中講了在Ubuntu下安裝caffe的經驗總結(各種問題,簡直懷疑人生了)。部落格連結:點我開啟 faster-rcnn有兩個版本,分別是Python的和MATLAB的。這裡介紹python版本的faster-rcnn的配置。 網上有很多相關的教程,起初我在配置

Linux裝置驅動第一天學習筆記如何將系統在開發板上執行起來、驅動開發基本步驟

如何將系統在開發板上執行起來? 4.0 交叉編譯器的獲取?廠家提供 網上下載(廠家確認) 4.1 uboot進行操作? 1,解壓廠家原始碼 2,進入原始碼 3,make distclean 徹底刪除原始碼的目標、臨時檔案 4,make xxx_c

u盤安裝CentOSlinux步驟雙系統

為了學習新的知識,決定給自己的神舟本子裝上CentOS系統,於是乎就自己在網上搜了教程,然而自己在安裝的過程中還是出現了小問題,尤其是為了進入圖形安裝介面花了我很大的力氣,經過多次嘗試終於成功,(每次裝系統我的本子都會受到摧殘/(ㄒoㄒ)/~~)為了能給想嘗試linux系統的

Unity3D 釋出APK安卓環境配置步驟、安裝、教程Java/Android(超全流程)

Unity3D安卓環境配置執行 本文提供全流程,中文翻譯。Chinar堅持將簡單的生活方式,帶給世人!(擁有更好的閱讀體驗 —— 高解析度使用者請根據需求調整網頁縮放比例) C

linux 通過sh指令碼執行java程式-1

應用存放路徑及依賴管理 可執行指令碼編寫 #!/bin/sh ##java env export JAVA_HOME=/usr/local/java/jdk export JRE_HOME=

linux執行緒退出時執行程式執行緒清理處理程式簡單例子

/********************************** pthread_exit.c **************************************/ #include <stdio.h> #include <stdlib.

OEL / RedHat linux 配置無線網路連線驅動安裝

本機環境:Thinkpad E440,Oracle Linux Server release 6.7(kernel 3.8.13-68.3.4.el6uek.x86_64)本機無線網絡卡為RTL8723BE,若不知道自己的無線網絡卡型別,可使用以下的命令檢視:lspci |

Mac下安裝MySQL配置

.tar.gz 界面 take 8.4 通過 -1 pass 查看 pack 首先需要下載 MySQL Community Server 下載地址:https://dev.mysql.com/downloads/mysql/ 進入MySQL的下載界面(https: