1

There is a bug in EJC (Eclipse's internal Java compiler) and I do not want to wait for an official bugfix. Is there way to point an existing Eclipse installation (let's say 4.6) to an ECJ version from 4.7 beta?

I know, I could just replace .jar(s), but is there an "official" way of doing so?

Dime
  • 2,041
  • 3
  • 23
  • 29
  • 2
    Just 'replacing jars' is not likely to work. You would probably be better using one of the full Milestone builds of Eclipse 4.7 Oxygen (Milestone 6 is the most recent). – greg-449 Mar 14 '17 at 14:51
  • The one from 4.7 maybe will not work. But upgrading jdt.core_3.12.2 to jdt.core_3.12.3 already solves my particular problem. And 3.12.3 comes already with the latest Gradle Buildship plug-in bugfix. Additionally 3.12.3 is not (I hope yet) part of the 4.6.3 Milestone. And some of my colleague do not like Buildship and use another Gradle plug-in. I know, the Buildship could always be installed, but I am really surprised that there is no way to specify an "alternative" EJC. – Dime Mar 14 '17 at 15:39
  • 1
    On a very minor note the compiler is called `ecj` not `ejc`. jdt.core_3.12.3 is in Eclipse 4.6.3 which is currently at Release Candidate 4 status so should be released in a few days. – greg-449 Mar 14 '17 at 15:53
  • Thank you! Interesting that if I update my Eclipse using http://download.eclipse.org/eclipse/updates/4.6-M-builds/ link, I still have org.eclipse.jdt.core_3.12.2.v_OTDT_r252_201612071657.jar. However if I download 4.6.3RC4 as .zip from the website, I see that there is org.eclipse.jdt.core_3.12.3.v20170228-1205.jar. Maybe this is an issues with one of my plugins, etc. – Dime Mar 16 '17 at 08:25

1 Answers1

-1

Install a version of java you want. In Eclipse click on "Window" -> "Preferences" -> "Java" -> "Installed JREs" and configure the JRE you installed. Then in Eclipse click "Window" -> "Preferences" -> "Java" -> "Compiler" and select the JRE you just configured.

bcr666
  • 2,157
  • 1
  • 12
  • 23
  • 1
    Eclipse does not use the compiler from the JDK - it uses its own internal compiler called 'ECJ'. Changing the installed JREs does not change this. – greg-449 Mar 14 '17 at 15:00