簡體   English   中英

Java 8-在Eclipse中構建期間的StackOverflow

[英]Java 8 - StackOverflow during build in Eclipse

我正在將Web應用程序遷移到Java8。我可以毫無問題地在Eclipse外部構建項目,但是我在ide中發現了奇怪的錯誤。 首先,應用程序中使用的幾個項目(25個中的4個)顯示的錯誤沒有任何意義。 對於實現集合接口的任何對象,我都會看到一條錯誤消息:“類型X不是通用的;不能使用參數<sometype>對其進行參數化。” 例如,

錯誤

它是一個java.util.collection。 我也遇到相同的錯誤,例如后綴類型。例如地圖,樹,ArrayList等。

另外,當我執行項目->清理時,Eclipse在構建這些項目時會引發StackOverflow錯誤。 這是來自日志的跟蹤:

!ENTRY org.eclipse.core.jobs 4 2 2015-12-09 15:50:54.309
!MESSAGE An internal error occurred during: "Build Project".
!STACK 0
java.lang.StackOverflowError
at     org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.substituteInferenceVariable(ParameterizedTypeBinding.java:856)
at org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.substituteInferenceVariable(ParameterizedTypeBinding.java:856)
at org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.substituteInferenceVariable(ParameterizedTypeBinding.java:856)
at org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.substituteInferenceVariable(ParameterizedTypeBinding.java:856)
at org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.substituteInferenceVariable(ParameterizedTypeBinding.java:856)
at org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.substituteInferenceVariable(ParameterizedTypeBinding.java:856)
at org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.substituteInferenceVariable(ParameterizedTypeBinding.java:856)

重復

我在兩個不同的Eclipse環境中看到這些錯誤。 STS 3.6.2和Mars 4.5.1。 有人知道這是怎么回事嗎?

在有問題的項目上,聽起來好像它們配置了舊的JRE系統庫,並且符合我們的遵從級別,而不是Java8。打開項目屬性,轉到Java Build路徑,然后檢查JRE系統庫設置為什么; 應該是J2SE-1.8。

暫無
暫無

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

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM