2014-07-19 12 views
16

Mam projekt Maven skonfigurowany do korzystania z Java 8 i wszystko działa poprawnie, zaćmienie kompiluje kod jak:zaćmienie nie wkładając operatora „diament” w Java 8 Projekt

Map<String,String> map = new HashMap<>(); 

nawet narzeka kodu w starym stylu ("redundantna specyfikacja argumentów typu"), gdy ustawię to na karcie Błąd/ostrzeżenia. Problem polega na tym, że nie mogę się domyślić, jak użyć tej składni domyślnie przy autouzupełnianiu - jestem pewien, że widziałem, jak działa wcześniej, ale teraz, gdy tylko ctrl-space wstawi konstruktora, nalega na dodanie parametrów , którego nie lubię.

Czy ktokolwiek może wskazać ustawienie, które należy wprowadzić, aby wstawić treść do pomocy <> zamiast < Ciąg, Ciąg>? A może jest to związane z faktem, że używam Java 8, a nie Java 7, czy też używam języka Java?

+1

jakie zaćmienie i jakie jest zaćmienie kompilatora Java? – Leo

+2

Czy jesteś pewien, że docelowa wersja java twojego projektu (* nie * ustawienie JRE) to przynajmniej Java 7? –

+0

To był STS 3.5.1 i zdecydowanie korzystałem z Java 8, ponieważ nie mam nawet zainstalowanej innej wersji (JDK lub JRE). Wersja docelowa projektu też była w porządku. Okazało się, że coś pomieszałem w ustawieniach Content Assist (mogło być też, że zainstalowana przeze mnie wtyczka Scala, a później usunięta, zmieniła coś lub inną wtyczkę). W każdym razie, podpowiedź Marco na dole pomogła i teraz działa ponownie, automatycznie uzupełniając składankę diamentów. :) – Lili

Odpowiedz

23

Miałem ten problem kilka minut temu i rozwiązałem go w połowie pisania pytania o SO.

Automatyczne uzupełnianie Eclipse najwyraźniej nadawało priorytet staromodnej ogólnej składni po tym, jak jakiś czas temu bawiłem się zaawansowanymi ustawieniami wspomagania zawartości. Spróbuj zresetować Java > Editor > Content Assist > Advanced do domyślnych; to właśnie naprawiło to dla mnie i przywróciło autouzupełnianie domyślnie do wstawiania składni diamentu.

+0

Dzięki! To się udało. Nie mogę uwierzyć, że nie przyszło mi zresetować ustawień do domyślnych ... :) – Lili

+0

Mam ten sam problem, ale niestety, resetowanie nie rozwiązuje go dla mnie (i używam zgodności z kodami Java 8). –

+3

Niesamowite. To również naprawiło mój problem i mam praktycznie nową instalację. Wszystko, co zrobiłem, to zaimportowanie projektu maven i stworzenie szablonów komentarzy. Wygląda na to, że wartości domyślne nie są tak naprawdę wartościami domyślnymi. – Kayaman

5

Miałem ten sam problem, ale rozwiązanie, aby ustawić wszystko domyślnie nie działa dla mnie. To, co sprawdziło się, to: i odznaczenie JPA Propozycje w górnym oknie.

+0

dzięki; to zadziałało dla mnie :-) – Hamzeh

2

Próbowałem dwóch innych rozwiązań wymienionych tutaj, ale żaden z nich nie działał dla mnie. To, co dla mnie zadziałało, to: Java > Editor > Content Assist > Advanced i sprawdzanie Java Non-Type Proposals w górnym polu.

W przypadku innej instalacji należało to również sprawdzić w dolnej części, ale działało w obu instalacjach zaćmienia.

+1

nie pracował dla mnie, dla mnie działał Java> kompilator, ustaw poziom zgodności na 1.8 zamiast 1.7 – user149621

0

Ten błąd zaobserwowałem podczas kompilacji z mavenem. Aby go rozwiązać, musiałem naprawić moją zmienną środowiskową JAVA_HOME na właściwy JDK.

Powiązane problemy