2010-11-12 13 views
6

Zauważyłem, że Eclipse IDE (dla Java, wersja 3.5.1) używa własnego kompilatora (i) java, ale nie mogę znaleźć sposobu na jego zmianę . Czy to możliwe?Jak ustawić inny kompilator Java niż Eclipse IDE

Może to trochę trywialne, ale po wielu latach używania IntelliJ IDEA wracam do Eclipse trochę niezręcznie.

Dzięki.

AKTUALIZACJA: Ponieważ potrzebowałem bardziej szczegółowych wyjaśnień, robię to.

Niedawno pomagałem innemu programistom Java i zauważyłem, że używa Eclipse bez JDK firmy Sun. Ponieważ w całej firmie używamy tylko JDK firmy Sun, uznałem to za dość dziwne.

Okazało się, że ma tylko Eclipse i nie są wymagane żadne dodatkowe narzędzia do kompilowania kodu Java (jak javac). Dzieje się tak dlatego, że Eclipse jest dostarczany w pakiecie z własnym kompilatorem (sprawdź więcej szczegółów pod numerem this).

Sam uważam tę funkcję za całkiem przyjemną i uważam, że były ku temu dobre powody. Ale chciałbym, aby wszyscy programiści firmy użyli tego samego kompilatora do wygenerowania kodu bajtowego Java (pliki .class). I uruchomić to w tych samych maszynach JVM. Tylko ze względu na możliwie najlepsze ujednolicenie środowiska i wyeliminowanie dodatkowych problemów związanych ze środowiskiem. Nie mam problemu z określeniem środowiska JRE w środowisku Eclipse.

Ale nie udało mi się znaleźć sposobu na zmianę domyślnego kompilatora Java na javac. Z drugiej strony, moja podstawowa IDE IntelliJ IDEA pozwala to zrobić (wybierz między kompilatorami javac, jikes lub Eclipse). Więc chciałem tylko wiedzieć, czy to samo możliwe w Eclipse czy nie.

Dodatkowo:

  • Nie, nie mam żadnych problemów z Eclipse kompilator jako takiego, jest to po prostu kwestia możliwości do wyboru.
  • Wiem, że Apache Ant i inne rozwiązania mogą być używane do kompilowania kodu Java z dowolnym kompilatorem. Ale tutaj jestem zainteresowany Eclipse i jego zintegrowanym budowaniem projektu (np. Pozycje menu pod menu Project).
+1

Czy możesz opisać, co jest niezręczne? –

+0

Czy jest jakiś konkretny problem, z którym się mierzysz? – Nivas

+0

Niepewność powrotu do Eclipse (używałem go przez kilka lat, całkiem dawno temu) jest jakoś innym tematem, pozwala skupić się na pytaniu podstawowym. Ogólnie jednak uważam, że konfiguracja Eclipse nie jest trywialna i niezbyt przejrzysta. – Ralkie

Odpowiedz

4

Co chcesz mieć? Jeśli chcesz mieć klasy utworzone przez kompilator Sun, możesz je zbudować za pomocą Anta. Eclipse używa własnego kompilatora, ponieważ kompilator Sun nie jest przeznaczony do użycia w środowisku automatycznie skompilowanym.

Z JDT website:

przyrostowe kompilatora Javy. Implementowany jako konstruktor Eclipse oparty jest na technologii opracowanej z kompilatora VisualAge for Java. W szczególności pozwala uruchamiać i debugować kod, który wciąż zawiera nierozwiązane błędy.

Należy pamiętać, że dla samej biblioteki, Eclipse będzie nadal korzystać z jednego z kompilatora Sun, które można ustawić za pomocą procedurę opisaną przez kolejne odpowiedzi (Nim Chimpsky i elity).

+0

Dzięki, ale nie rozumiem, jak można ustawić kompilator wybierając różne środowiska JRE. Uaktualniłem moje pytanie, może będzie bardziej jasne o co mi chodzi. – Ralkie

+0

OK ... z tą aktualizacją odpowiedź jest teraz łatwiejsza. ** Nie .. nie można tego zrobić ** – nanda

+0

Dzięki, że to zrobię. – Ralkie

0

prawy projekt przycisk myszy> Właściwości> Java kompilator

+0

Tak, znalazłem ten formularz, ale jak rozumiem, więcej o niektórych dodatkowych opcjach kompilacji, ale nie o ustalaniu różnych implementacji kompilatora Java (javac). – Ralkie

2

To jak dodać własną JDK/JRE:

  • Goto Windows ->Preferences menu.
  • W oknie Preferencje, w lewym menu rozwijanym wybierz, Java ->Installed JREs.
  • Kliknij na bitton Add (po prawej), wybierz Standard VM, pojawi się okno dialogowe z tytułem Add JRE.
  • W polu : kliknij przycisk directory i przejdź do folderu głównego JRE/JDK. Po wybraniu nastąpi automatyczne uzupełnienie i kliknięcie Zakończ.

Gdy skończysz, wróć do okna Preferences i zaznacz przycisk opcji dodanego środowiska JRE/JDK, aby był domyślny.

Mam nadzieję, że to pomoże.

+0

ta zmiana ścieżki jdk, a nie kompilator (ecj) –

+0

@ J-16 SDiZ, prawda, ale pytanie jest niejednoznaczne, nie można zmienić kompilatora Eclipse, ale można zezwolić na kompilację kodu z Oracle JDK. –

+2

Dzięki, ale czy ustawienie JRE ma naprawdę coś wspólnego z kompilacją? Przynajmniej myślałem, że pakiet JRE firmy Sun nie zawiera żadnych narzędzi, takich jak javac (to dlatego mamy zarówno środowisko JRE, jak i JDK, co nie jest takie samo). – Ralkie

1

Podczas gdy ja również szukałem tego, jedynym rozwiązaniem, jakie znalazłem, było użycie Mavena. Przy użyciu wtyczki-kompilator można określić kompilator do użycia, a zaćmienie go deleguje. Mam nadzieję, że podobną sztuczkę można zrobić dla projektów opartych na mrówkach.

  <plugin> 
      <artifactId>maven-compiler-plugin</artifactId> 
      <version>2.3.2</version> 
      <configuration> 
       <compilerId>javac</compilerId> 
       <encoding>${project.build.sourceEncoding}</encoding> 
      </configuration> 
      <dependencies> 
       <dependency> 
        <groupId>org.codehaus.plexus</groupId> 
        <artifactId>plexus-compiler-javac</artifactId> 
        <version>1.6</version> 
       </dependency> 
      </dependencies> 
     </plugin> 

dp4jmaventest jest demo roboczego za pomocą tego config.

Bug 341842 to żądanie funkcji Eclipse dla takiej obsługi.

Powiązane problemy