㈠ java方面:我現在需要把原來別人寫的jar包中的class文件反編譯出來,修改一下裡面的邏輯,再編譯放回去
想了解一下,你是使用什麼進行編譯的?
是否只對這一個文件進行了修改,還是說整個jar包中的都反編譯出來了
如,方法修改,調用該方法的代碼報錯了,等可能存在的問題
㈡ Java的jar包互相引用需要重新編譯打包
反編譯出來的JAVA文件重新編譯的過程如下:
1、新建一個myeclipse的web project。
2、右鍵該工程,myeclipse/add struts capability,設置成struts開發環境。
3、將war包解壓,全目錄覆蓋新工程的WebRoot(包括其中的web-inf/meta-inf目錄),相應的scr目錄(或者對應的包含java文件的目錄)覆蓋eclipse的src目錄。myeclipse會自動將WEB-INF\lib下的jar包作為放到classpath中的。
4、refresh該工程,over。
不過大部分反編譯過來的工程,很難重新編譯,因為import引用的jar包或者類名沒有的話,工程直接報錯。
㈢ jar源碼用jd-gui反編譯後如何還原成原java工程
既然是開源軟體你為何要反編譯呢?
直接找源碼不更好。。。
而且jd-gui的出發點就是反編譯class文件供研究學慣用途的,讓你還原成一個工程還得了的。。。
㈣ JAR反編譯修改重新打包的問題
用反編譯工具反編譯出jar里的class
把反編譯出來的內容復制到eclipse中
eclipse中src上右擊,export
當然是的 :: 暫時不知道有什麼好辦法
你要重新打包肯定是要修改其中某個class,不必要全部弄
可以把.jar 改成.zip 兩中壓縮的格式演算法一樣,只開始相差四個位元組
改成zip後把裡面你要改的class這樣處理一下再放進去,
然後把後綴還改回來
㈤ 有什麼辦法能無錯的反編譯jar成源碼
你需要懂得一些匯編的基礎。
反編譯出來的源碼不是有錯,而是根據class文件進行反匯編而成的,這里的匯編並不完全等同於8086那一類匯編,但是基本的語句是類似的。因為java不支持goto語句,而匯編中跳轉語句實現了所有的循環和條件語句,所以反匯編出來的代碼會報錯。
你必須把這些「有錯的」代碼讀懂,把有goto的地方翻譯成循環或者條件語句。
你可以試試反編譯一些無條件無循環的java文件,得到的源碼肯定可以直接運行的。
然後自己加一點循環語句,看看反編譯出來的代碼,做對比,多試驗幾次,你就能看得懂那些「有錯的」代碼了。
目前我沒有用過能夠把class完全還原成java文件的反編譯工具。
㈥ 如何將手機java軟體反編譯修改後再編譯成jar
這個很簡單,把jar包反編譯這個你應該知道了,很多工具jd gui就是不錯的一個,然後,你用Eclipse等工具把你反編譯的文本貼到java文件中。
這時肯定有編譯錯誤,你可以把你軟體中的jar包都引為classpath下。
編譯通過後,就可以去取.class文件了再放回jar包中原有的目錄。
全部搞定。
㈦ jar解壓後 如何把解壓出來的文件夾 重新編譯成jar
用winrar打包成zip,再改成jar即可:
1、假設您之前解壓的是下面的這些文件
㈧ 怎麼重新編輯一個已經打包好的java程序昨天下載了一個java的程序,已經導出為jar,我想修改
如果沒有源碼春搜,一般來說不是很把握。以下方法是針對更改一個文件的。
需要反編輯工具。
在eclipse中創建一個java工程。
在工程中引入你下載的jar
用rar打開jar文件,取出你想更改的class文件。反編輯為java文件
將反編譯的java文件放入工程中,並將所需要的地方修改。
到對應的工程目錄中的bin目錄也,找到新編譯的class文件。
用rar工具將新編譯的class替弊森圓換jar文件中的class文件。
如果你需要更改的文件比較多,還是租塌找一下源碼工程。
上述方法。也有可能因為反編譯的不完全而不成功。
㈨ JDK1.7編譯的jar包如何重新編譯為JDk1.6的
你好:這個暫時是沒有辦法的,近似的來說也只能是將class反編譯,之後重新弄成項目,在打包為jar;要不是沒有辦法實現這種代碼的逆向編譯的。