包含第三方jar包以及dll檔案的Java程式打包

2021-07-26 08:44:24 字數 899 閱讀 4332

介紹一下我這個程式的背景:我開發的程式需要用到第三方的jar包,需要呼叫海康威視的dll庫檔案。程式開發的差不多快要結束的時候需要把程式打包成乙個jar包好給客戶演示用(總不能把源**給客戶吧),打包的過程是乙個坎坷的過程。下面介紹一下我走過的彎路以及最後的解決方法。

經歷的過程大體分為一下4個過程:

1.網上的過程利用myeclipse自帶的工具把程式打成jar包,這個過程我就不介紹了,網上很多,而且沒有成功。這個過程的問題是不能開啟主介面,這個打包過程中會讓選定main函式所在的類,我的程式裡面main函式所在的類是登入介面類。執行打成的jar包只能開啟登入介面,登入後的介面打不開(這種方法的問題是不能把第三方的jar包以及dll檔案打進jar包)。

2.繼續網上查詢方法。網上說了很多可以打包第三方jar包的方法。我這裡使用了fat jar外掛程式來把程式打成jar包。執行打成的jar包,效果同過程1,這種打包方法不能把需要的dll檔案打進jar包。

4.其它的坎坷過程,包括使用新的打包軟體等,都沒有成功。

根據提示dll檔案找不到,我查詢了網上的解決方法,方法都是讓新增一段**。由於我的水平太低,我竟然不知道這段**需要新增到哪個檔案裡,很尷尬是不是

既然找不到dll檔案,最先想到的就是把打成的jar包和用到的dll檔案放在同乙個目錄下面,可惜的是沒有成功呢。這個時候我突然想到可能是相對路徑的問題,於是我就按照工程**中的路徑對jar包和需要的dll檔案進行部署。工程裡面的檔案結構如下:

其中工程中需要用到的dll檔案在lib資料夾中。按照這個思路,我們把jar包和dll檔案也進行了相同的放置。如下:

這裡,工程中需要的dll檔案也放置在lib資料夾中了。另外工程中用到的等相對於jar檔案的路徑也要和工程**中的相對路徑相同。這裡的jar檔案是按照過程2打包成的fat jar檔案。只有怎麼打包成fat jar,網上一大堆,這裡就不詳細介紹了。

普通 專案打包包含第三方jar包

在工程中包含第三方jar包時,普通打包方式打出的jar包無法包含第三方jar包。可以使用net.sf.fjep.fatjar 0.0.31.jar外掛程式,將第三方jar包包含在打出的jar包中,只要將該外掛程式放到eclipse的dropins目錄 如 d program files eclips...

Fatwire整合第三方jar包

嚴格意義上這不屬於fatwire知識的範疇。因為fatwire基於j2ee,所以這裡僅作為參考備忘 這裡以jstl為例 如果伺服器採用tomcat5.5,不支援jstl1.2,只能用 jstl1.1,複製 jstl.jar xalan.jar serializer.jar 到cs web inf l...

第三方jar包開發小結

使用jsp作為靜態資源,部分框架無法解析。所以靜態頁面這種東西,還是用html最合適。作為提供給別人用的第三方jar包,應該盡可能減少配置及配置檔案的產生。properties物件的put方法,value不能為null,否則會拋空指標異常。file.mkdir只能建立一層目錄,當要建立的目錄中,多層...