2015-11-26 71 views
2

當我在Java開發中使用Eclipse時,似乎永遠無法使包名稱和文件夾結構不同。爲什麼有時會看到Java包名稱與文件夾結構不同?

例如,如果你在它創建的文件夾結構src/com/naishe/test和創建類,包名會com.naishe.test,請參閱:

Java Package Vs Folder-Structure? what is the difference

不過,我已經看到了工程實例(Maven的測試)其中它們的類路徑是:

src/test/java/uk/co/automatictester/jwebfwk/page/objects/MainPage.java 

和包的定義是:

package uk.co.automatictester.jwebfwk.page.objects; 

public class MainPage extends ParentPage { 
... 
} 

前面的test/java不在包名中。

它是如何完成的(在Eclipse中)?有人可以幫忙解釋嗎?

+0

我非常建議你研究'classpath',而不是試圖從工具的角度解釋它,試圖從你的角度隱藏這些東西。如果你知道Java類路徑是如何工作的,那麼你永遠不必再次懷疑這些事情。這是一個承諾。 – Gimby

+0

@Gimby感謝您的建議。 – user1559625

回答

4

這取決於你已設置爲源目錄,作爲一個例子讓你directoy樹的任何文件夾點擊鼠標右鍵,把構建路徑 - >作爲源文件夾

7

包名稱從源目錄的底部開始。如果您將src/test/java作爲源目錄,那麼給出的示例是正確的。

0

如果我理解正確的話,你什麼可以通過創建一個源文件夾並將其命名爲src/test/java來完成:右鍵單擊項目,新建和源文件夾。

2

在我看來,你有一個maven項目。

你有兩個選擇有這個項目在Eclipse中正確顯示:

  1. 下載http://www.eclipse.org/m2e/ Maven的Eclipse插件和 那麼你可以讓該項目作爲Maven項目。您將會在項目中自動獲得正確的結構 。
  2. 其他選項是在控制檯中運行mvn eclipse:eclipse。這會將.project和.classpath添加到您的項目中。日蝕 將正確顯示它們。
相關問題