2012-06-19 68 views
3

以下是我的項目結構。eclipse項目中junit和source的兩個獨立JRE

-project 
    -sources 
     -my.package 
      -MyClass.java 
    -test 
     -my.package 
      -MyClassTest.java 

我想爲我的源使用小於1.5的JDK版本。

因爲我的junit測試類需要最新的JDK。

有沒有可能爲同一個項目使用兩個不同的JDK。

Current solution: I can configure latest JDK for the project and can compile using different targets one for source and one for test. javac -target.

這是正確的方法嗎?或請建議任何正確的解決方案。

在此先感謝。

+0

爲什麼你要使用Java 1.4 - 你有什麼具體的原因?可能有一個更簡單的方法來實現你所需要的。 – Robert

+0

@Robert要使用自動完成功能,如果我設置爲1.5或6 eclipse/netbeans將生成與較低jdk版本不兼容的代碼。 –

回答

2

在Ant構建中,您可以爲不同的源文件夾自由指定不同的JDK和編譯器設置。

但是對於Eclipse編譯,我認爲你將被限制爲每個項目使用一個JDK和編譯器設置。我不認爲你可以在Eclipse項目中爲每個文件夾指定單獨的編譯器。

選項:

  • 將這些文件夾作爲單獨的Eclipse項目。或者,

  • 爲兩個文件夾實現Ant構建,但Eclipse僅爲其中一個構建。例如,對於 示例,您的junit類將僅由Ant構建。

+0

感謝您的迴應,第二個解決方案不會工作,下面是一個例子。 @RunWith(PowerMockRunner.class) @PrepareForTest( )語法錯誤,註釋僅在源級別爲1.5或更高時纔可用 我無法將我的JRE映射到1.5。 –