2014-03-13 55 views
0

我正在編譯一個名爲MyPeogram.java的java源文件。現在我想用javac來編譯這個文件,並將這個類文件保存爲MyCompileCode.class這個名字。是否有可能給編譯文件提供這樣的自定義類名?在javac命令中如何給定製類文件名?

請讓我知道如何做到這一點。我在網上搜索了很多,但找不到任何東西。

+0

爲了什麼目的?即使你能做到這一點,使用它也不會起作用。 – EJP

回答

3

號源文件的名稱必須與編譯後的文件的名稱相匹配。

-1

包含class/interface/enum/... X的文件的名稱必須始終爲X.java

這是關於Java的煩人的事情之一:你不能在一個文件中定義多個公共類。

您當然可以將您的程序編譯爲可執行文件*.jar,您可以在給定使用的文件系統(某些字符被Windows FAT和NTFS文件系統禁止某些字符)的情況下命名任何有效的名稱。

+0

你當然可以,但只有其中一個可以公開。你真的不得不有一個makefile? – EJP

+0

那麼你可以確實定義一個內部類。是的,一個'Makefile'很好。 Furhermore這甚至不是因爲喜歡的編譯器與一個Makefile'mcs'可以通過編譯完美地處理這個事情'MCS * .cs' –

+0

此外,你不能使用,例如'vim'重命名類。您需要加載整個IDE。 –

1

據我所知,我認爲這是不可能的,因爲Java的編譯和解釋兩者。即使你編譯程序和改變,它的名字,解釋獲取類文件的名稱和在類文件數據混淆。

糾正我,如果我錯了。

+0

這聽起來不像是你自己有很大信心的答案。 –

相關問題