2016-04-12 197 views
-2

我有一個Java應用程序,需要修改它的一些功能。 我在github上搜索源代碼。它是.java,我可以看到並使用note ++ 進行編輯,然後用命令行進行編譯,但它說了很多錯誤並且不生成.class文件。編譯java源代碼?

我也提取java應用程序來獲得.class文件,我想修改 我去反編譯,然後編譯,但也得到錯誤。

所以任何方式來編譯源代碼雖然有錯誤嗎?

我不知道爲什麼我反編譯,然後編譯但得到錯誤?

這裏是源代碼:https://github.com/OWASP/OWASP-WebScarab/blob/master/src/org/owasp/webscarab/plugin/sessionid/SessionIDAnalysis.java

我需要修改源代碼的東西,編譯成的.class

我試圖編譯源代碼,而無需編輯,但仍然得到錯誤不能看到符號。

我反編譯我提取的.class文件,然後重新編譯,但仍然錯誤。 錯誤:

enter image description here

我用JDK與Windows命令行編譯。

+2

那麼它聽起來就像你不能正確編譯 - 但不知道一)的源代碼; b)你如何編譯它; c)你得到的錯誤,真的很難幫助你。請閱讀[問]並澄清你的問題。 –

+0

編譯錯誤時無法編譯java文件。你應該在編譯 – Arashsoft

+0

之前解決它們,謝謝你的評論。我將更新信息 –

回答

0

Eclipse可以編譯不能編譯的Java類,雖然這是一個非常糟糕的想法恕我直言。它可以代替任何錯誤throw new Error("compile time error");

你最好;

  • 不試圖修改反編譯的類,請嘗試修改原始源。
  • 如果你反編譯一個類,不是所有的反編譯器都是一樣的。我發現FernFlower是最好的之一(它是內置於Intellij中的)
  • 如果代碼沒有成功反編譯,你需要修補代碼以便編譯,如果你想再次編譯它。
  • 使用IDE反編譯和重新編譯(和其他一切發展)
+0

感謝您的意見 –

+0

@NguyenDiep如果你願意,你可以接受或upvote這個答案。 –