我沒有最新的源代碼,但在服務器上部署了war(最新)文件。
請建議
1)獲取戰爭的源代碼/耳的最佳途徑
2)比較和合並/更新出現在戰爭/耳代碼可用的源代碼,但在可用的源代碼所缺少(我使用的Eclipse IDE)
在此先感謝
我沒有最新的源代碼,但在服務器上部署了war(最新)文件。
請建議
1)獲取戰爭的源代碼/耳的最佳途徑
2)比較和合並/更新出現在戰爭/耳代碼可用的源代碼,但在可用的源代碼所缺少(我使用的Eclipse IDE)
在此先感謝
戰爭文件基本上是zip文件,所以他們很容易提取。 (使用解壓縮或只是重命名文件) 接下來,您可以使用JD的Java反編譯器。 但是,由於編譯器進行了大量優化,因此不會得到原始的Java代碼。 但一旦你提取從EAR類應該給你一個很好的起點
/WAR /罐,採用JAD反編譯你感興趣,回到源代碼:http://varaneckas.com/jad/
我不確定是否有任何即開即用的工具將比較/區分您的原始源與源自JAD之類的反編譯源。另外請記住,將類反編譯回源代碼並不會生成與原始代碼相同的源代碼 - 代碼風格將會不同,甚至可能包含某些代碼結構。在原始源代碼和反編譯源代碼之間做差異是很困難的。
如果您有原始源代碼,但不是當前部署的代碼的源代碼,那麼可能更好的問題是問'爲什麼不'。如果您的構建過程中缺少某些內容,而您沒有跟蹤每個構建使用的源代碼,可能這是解決前進的一個更容易的問題,而不是嘗試執行某些笨拙和容易出錯的問題,如其他源代碼的差異並反編譯源代碼?
確切答案:不可能從war
獲取原始源代碼(.java
文件),而不是jar
(java
存檔)。當您創建一個jar
文件時,您可以決定是否要包含.java
文件。只有一個Java反編譯器可以幫助,請參閱其他答案。
提取戰爭並使用反編譯器嘗試獲取戰爭中任何java類的源文件 – jgr208