小編給大家分享一下如何將nutch源代碼進(jìn)行修改后將項(xiàng)目和第三方j(luò)ar包打成一個(gè)整體ar包,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
創(chuàng)新互聯(lián)公司是一家專注于成都做網(wǎng)站、成都網(wǎng)站建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)與策劃設(shè)計(jì),濱湖網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設(shè)10多年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:濱湖等地區(qū)。濱湖做網(wǎng)站價(jià)格咨詢:13518219792
我在打好jar包后,在Linux下運(yùn)行
[root@nutch-five test]# java -jar crawl-test.jar
報(bào)錯(cuò)信息為:
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/util/Tool
意思就是說:我們的第三方j(luò)ar包并未起作用
最開始,一直以為是打包的方法有誤。翻來覆去折騰了好幾個(gè)小時(shí)。最終老大提了另一種思路,他覺得用ant打包可能會(huì)容易一些。但是,在網(wǎng)上找了些資料看了一下,發(fā)現(xiàn)挺麻煩的。最終沒有做這種方法。
繼續(xù)查錯(cuò),我也懷疑過是不是hadoop jar包的問題,我認(rèn)為可能是hadoop-core.jar下的META-INF文件下內(nèi)容程序找不到。事實(shí)上,也不是這個(gè)原因,上邊的想法都只是猜測而已。hadoop-core.jar的結(jié)構(gòu)和其他第三方j(luò)ar包的結(jié)構(gòu)完全一致。
沒辦法,最后不知道怎么腦袋一抽~才想到怎么不在windows下的dos中測一下。這一次,發(fā)現(xiàn)打的jar包是可以運(yùn)行的。
到了這兒,老大問我,為什么在Linux下不行,在Windows下可以?其實(shí),當(dāng)時(shí)一高興,我也沒思考過這個(gè)問題:所打的jar包,為什么在windows下可以運(yùn)行成功,但是在Linux下卻不可以。
老大提了思路,他說:會(huì)不會(huì)是,路徑的問題。因?yàn)閣indows下的路徑分隔符和Linux下的路徑分隔符有區(qū)別。我恍然~~這種可能性非常大!?。?/p>
我每次對于windows和Linux的路徑、轉(zhuǎn)義字符等一系列的區(qū)別總是傻傻分不清楚。雖然知道它們有區(qū)別,但是每次都記不住。導(dǎo)致,每次在遇到這些問題時(shí),都會(huì)浪費(fèi)大量的時(shí)間做無用功~~~~
這次的感觸是:
1、要堅(jiān)持,有時(shí)候希望就在你絕望到將要放棄的時(shí)候出現(xiàn)。
2、思維要活躍,想問題不要局限在很小的框子內(nèi),天馬行空最好。有時(shí)候,看似不相關(guān)的兩個(gè)事情,當(dāng)你換一種思路來看時(shí),它正好能解決你的問題。
3、要不斷地回顧?;仡欀暗南敕?,回顧之前的做法,看看自己疏忽了哪些關(guān)鍵點(diǎn)。有時(shí)候思路和方向都沒有錯(cuò),錯(cuò)就錯(cuò)在細(xì)節(jié)上??勺约哼€糾結(jié)的認(rèn)為,或許思路和方向都錯(cuò)得太遠(yuǎn)了。
4、遇到問題了,不能僅僅是解決問題,而且要知道為什么。想明白,然后下次注意。
結(jié)合前輩們的相關(guān)資料:
簡單jar打包示例 合并第三方j(luò)ar包打包操作
下面列出詳細(xì)的打包過程:
1、在我們所需要打包的項(xiàng)目下新建文件夾META-INF。我的項(xiàng)目名稱為nutch源代碼的項(xiàng)目名稱branch-1.7
2、在META-INF下新建文件MANIFEST.MF。文件內(nèi)容類似:
Manifest-Version: 1.0 Main-Class: com.pacong.convert.auto.propertes.ConvertAutoProperties Class-Path: lib/xxx.jar lib/yyy.jar lib/zzz.jar
看完了這篇文章,相信你對“如何將nutch源代碼進(jìn)行修改后將項(xiàng)目和第三方j(luò)ar包打成一個(gè)整體ar包”有了一定的了解,如果想了解更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
名稱欄目:如何將nutch源代碼進(jìn)行修改后將項(xiàng)目和第三方j(luò)ar包打成一個(gè)整體ar包
文章來源:http://jinyejixie.com/article26/ijdgjg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊、網(wǎng)站建設(shè)、虛擬主機(jī)、定制開發(fā)、、網(wǎng)站設(shè)計(jì)公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容