簡體   English   中英

如何讓Eclipse使用JDK8編譯項目?

[英]How to have Eclipse use JDK8 to compile a project?

我正在嘗試新的jdk8這里有什么http://jdk8.java.net/lambda/

我能夠從命令行編譯和運行我的項目。

我還能夠將這個新的JDK添加到Eclipse中的Installed JREs中。 但是,我無法讓Eclipse使用這個JDK編譯和運行項目。

我正在嘗試更改Project Properties/Java Compiler上的設置,但禁用Use [JDK] compliance from execution environment on the 'Java Build Path'復選框Use [JDK] compliance from execution environment on the 'Java Build Path'Use [JDK] compliance from execution environment on the 'Java Build Path'無論我點擊此頁面,我都無法使其正常工作。

我有Eclipse平台版本:3.7.1

有任何想法嗎?

謝謝

Eclipse使用內置編譯器而不是javac 內置編譯器顯然不支持Java 8。

您可以為項目定義一個自定義構建器,它將調用您的javac 在項目的首選項中,轉到“Builders”,添加新的自定義構建器(可以是Ant腳本或可執行程序)並禁用默認的內置Java構建器。

之后, 使用您選擇的JDK 運行項目應該不是問題 - 將其添加到“已安裝的JRE”首選項頁面(就像您所做的那樣)就足夠了。

Eclipse現在支持JDK 8 EA:

Eclipse JDT / Core團隊很高興地宣布早期訪問版本的可用性,並支持以下Java 8功能。

我們建議您從干凈安裝開始

此更新站點設置為定期從BETA_JAVA8開發分支的頂部重建和打包相關項目。

資料來源: http//dev.eclipse.org/mhonarc/lists/eclipse-dev/msg09679.html


編輯:

升級eclipse后,您需要更改JDK和編譯器級別。 以下是在Eclipse中使用lambda的屏幕截圖:

在此輸入圖像描述

go window-> preferences-> Java-> Installed JREs-> execution environment-> Java SE-1.8

我是這樣做的:

1.右鍵單擊Package Explorer上的JRE System Library,然后選擇Properties(在右側)

右鍵單擊Package Explorer上的JRE System Library,然后選擇Properties(在右側)

  1. 改變你的執行環境。

改變你的執行環境

您幾乎可以忘記這一點,因為即使是eclipse 3.8計划也只是說“開始使用Java 8支持”。

處理前沿有其缺點......

如何使用jdk8對ArrayList進行分組過濾<object><div id="text_translate"><p>這是周一的 Object 電話。 它有兩個屬性,開始和結束,都是字符串。 結束屬性可以包括“;” 像這樣</p><pre>Mon m1 = new Mon(); m1.setStart("A"); m1.setEnd("a;b"); Mon m2 = new Mon(); m2.setStart("A"); m2.setEnd("b"); Mon m3 = new Mon(); m3.setStart("C"); m3.setEnd("c"); Mon m4 = new Mon(); m4.setStart("A"); m4.setEnd("c");</pre><p> 這是 ArrayList。</p><pre> List&lt;Mon&gt; list = new ArrayList(); list.add(m1);list.add(m2);list.add(m3);list.add(m4);</pre><p> 現在我想按起始屬性和結束屬性對列表進行分組,但基於末尾包含“;”,所以我也想將 m1 和 m2 放入同一組,因為 m1.end 包含 m2.end ,但 m4 在另一組中,因為 m4 開始和結束與 m1,m2 不同。</p><p> 我嘗試使用 Collectors.groupingBy 按開始分組</p><pre>Map&lt;String, List&lt;Mon&gt;&gt; map = list.stream().collect(Collectors.groupingBy(d -&gt; d.getStart()));</pre><p> 但這不是我想要的 Output 的結果,如下所示:</p><pre> key: Aa;b OR Ab, value: m1, m2 key: Cc, value: m3 key: Ac, value: m4</pre><p> 有什么方法可以實現它,jdk8 stream function 更好</p><p>非常感謝</p></div></object>

[英]How to use jdk8 to group by and filter the ArrayList<Object>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

相關問題 如何在Eclipse Indigo中添加jdk8 將 JPublisher 與 jdk8 一起使用 Maven:使用JDK8編譯Java 7 如何在JDK8中動態編譯/加載lambda表達式? 如何使用JDK8在Eclipse中導入javax.faces庫? 找不到模塊:如何使用模塊編譯JDK 10 Eclipse Maven項目? 如何使用jdk8對ArrayList進行分組過濾<object><div id="text_translate"><p>這是周一的 Object 電話。 它有兩個屬性,開始和結束,都是字符串。 結束屬性可以包括“;” 像這樣</p><pre>Mon m1 = new Mon(); m1.setStart("A"); m1.setEnd("a;b"); Mon m2 = new Mon(); m2.setStart("A"); m2.setEnd("b"); Mon m3 = new Mon(); m3.setStart("C"); m3.setEnd("c"); Mon m4 = new Mon(); m4.setStart("A"); m4.setEnd("c");</pre><p> 這是 ArrayList。</p><pre> List&lt;Mon&gt; list = new ArrayList(); list.add(m1);list.add(m2);list.add(m3);list.add(m4);</pre><p> 現在我想按起始屬性和結束屬性對列表進行分組,但基於末尾包含“;”,所以我也想將 m1 和 m2 放入同一組,因為 m1.end 包含 m2.end ,但 m4 在另一組中,因為 m4 開始和結束與 m1,m2 不同。</p><p> 我嘗試使用 Collectors.groupingBy 按開始分組</p><pre>Map&lt;String, List&lt;Mon&gt;&gt; map = list.stream().collect(Collectors.groupingBy(d -&gt; d.getStart()));</pre><p> 但這不是我想要的 Output 的結果,如下所示:</p><pre> key: Aa;b OR Ab, value: m1, m2 key: Cc, value: m3 key: Ac, value: m4</pre><p> 有什么方法可以實現它,jdk8 stream function 更好</p><p>非常感謝</p></div></object> 使用JDK8編譯目標JRE7 如何在jdk8和jdk9上使用不安全的java8代碼? 如何使用 JDK8 和 JDK11(里面有 String.format)有相同的 slf4j 日志?
 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM