首先說一下爲何要特別寫一個文檔來講明這個層次結構的事情,各位都在eclipse中使用java.io.File類讀取過 workspace中的文件,我相信在不瞭解eclipse目錄層次結構的狀況不多有人能夠一次性把路徑給寫對了,爲了不之後再出現這種使人難堪的情 況,仍是編寫這樣一篇掃盲性的說明文檔比較合適。固然重點毫不是上面的資源路徑怎麼編寫,而是影響圍繞整個工程的生命週期的構建活動。 java
首先看一下eclipse在默認狀況下建立一個普通的Java Project的目錄結構: web
從上面能夠看出來eclipse在建立一個Java Project的時候會建立一個默認的Source folder名爲src,該文件夾下的全部文件通過編譯以後會輸出到同級的bin目錄下。關於working set,很好理解,用來分類管理項目工程,你建立的工程主要用來作什麼?屬於什麼類別?考慮完這兩個問題你就知道放置在哪一個具體的working set中了。 app
默認狀況下,Package Explorer不顯示working set,這須要將working set做爲頂級元素的設定方法以下: eclipse
不少人在編寫測試用例的時候喜歡用一個main方法在被測試程序內部中進行測試,如此把測試代碼和生產代碼混合在一塊兒對程序可讀性簡 直是毀滅性的打擊,因此仍是創建一個專門的測試類吧,測試類的命名最好聽從必定的規範這樣你們都容易識別,建議將被測試類名+Test做爲基本測試類的命 名規則。關於測試類的存放又是有門道的,不少人喜歡在src下創建一個package叫作test,而後在這裏面存放全部的測試用例。仍是那句話,測試類 不該該出如今生產環境下,因此仍是將測試類放到一個單獨的source folder下面吧。 webapp
下面分享一個建立測試用例的簡便方法: maven
如今我有一個這樣的類須要進行測試 測試
package cn.seit.eclipse; spa
public class HelloEclipse { .net
public static String sayHello(String name) { blog
return "Hello" + name;
}
}
首先在Package Explorer中選中HelloEclipse這個java文件,而後新建一個JUnit Test Case,eclipse會自動完成下面這些事情:
點擊Next,選擇須要測試的方法
完成以後,能夠發現被測試類和測試用例的關係以下:
這樣一來二者之間就創建了必定的對應關係,經過一方能夠輕鬆知道另外一方的存放位置。
引用上面將測試用例存放在一個專門的資源文件夾下的思想,咱們一樣能夠將工程中產生的配置文件放置在一個專注的資源文件夾下。
Java Project發佈通常是經過jar包的方式,咱們能夠在導出jar的時候作一下輕鬆設定,就將測試用例從生產環境中脫離了。
上面主要就是講述了一個工程的資源文件的合理存放位置,用過maven的朋友對這種方式會很是熟悉,由於maven的工程結構就是這樣子的。
Maven提倡使用一個共同的標準目錄結構,使開發人員能在熟悉了一個Maven工程後,對其餘的Maven工程也能清晰瞭解。這樣作也省去了不少設置的麻煩。
如下的文檔介紹是Maven但願的目錄結構,而且也是目錄建立工程是採用的目錄結構。Maven推薦你們儘量的遵照這樣的目錄結構。
src/main/java |
Application/Library sources |
src/main/resources |
Application/Library resources |
src/main/filters |
Resource filter files |
src/main/assembly |
Assembly descriptors |
src/main/config |
Configuration files |
src/main/webapps |
Web application sources |
src/test/java |
Test sources |
src/test/resources |
Test resources |
src/test/filters |
Test resource filter files |
src/site |
Site |
LICENSE.txt |
Project's license |
README.txt |
Project's readme |
看,maven的思想仍是至關值得借鑑的,使用一個統一的標準目錄層級結構能夠爲開發者大大下降溝通成本,提升團隊的執行效率。我想在軟件開發整個行業裏面,你們遵循統一的標準對行業的發展會起到一個很好的促進做用,謝謝。
做者:蕭易客
時間:2014/6/4