我很少使用java,所以我對現代生態系統的知識是非常有限的:(。AFAIK,Java是沉重的目錄層次結構和文件名:例如,如果我有一個.jar文件與 「com.mycompany .myapp.WndMain「類,相應的.class文件必須完全命名爲」WndMain.class「(區分大小寫!),並放入」com/mycompany/myapp「目錄樹中.jar文件(實際上是.zip存檔)。是否可以在.jar文件中自動創建目錄層次結構?
但在開發應用程序,我不希望我的源代碼文件被命名爲駝峯匹配,分散在一些目錄樹!這是我源代碼,畢竟,我更喜歡的文件被主辦它的方式很舒服me與他們合作,而不是一些愚蠢的編譯器和存檔:)。我想要一個乾淨的「src」文件夾,其中包含「wnd_main.java」,「wnd_about.java」等文件。是否有一些easy方法根據實際的源代碼內容在編譯期間自動生成正確的文件名和目錄結構?
當然,我可以通過Python,Ruby,Shell或其他任何方式創建自己的腳本 - 讀取「.java」文件的內容,解析「使用」和「類」指令,創建目錄結構,複製文件,編譯等......但也許所有這些已經在幾年前完成了,我需要的只是類似於「sudo apt-get install javamake」? :)
真的嗎?我認爲'.java'和'。類路徑名_必須與類名相匹配。從來沒有在我的生活中,我可以有一個公開課在錯誤的文件中聲明。我的編譯器不允許我這樣做。 –
我懷疑所有的IDE都會強制執行源文件的包結構,但這在技術上並不是編譯器的要求。嘗試用包聲明創建一個簡單的'Hello.java',然後執行'javac -d。 Hello.java' - 它會起作用,並把'Hello.class'文件放在一個包的子目錄中。 –
只要這些課程沒有公開,這不是一個要求。**但是大多數課程都是。 –