In MyEclipse 2024, 10x your productivity with AI coding assistance provided by Copilot integration, write modern Java with Java 22 support, and deploy to the most recent versions of application servers like WildFly and Payara. More performant Spring tooling enables a smoother coding experience, while language server updates ensure up-to-date language support for all modern web technologies. Framework and plugin updates round off this release, setting the stage for an incredible 2024 in dev tooling. Read on for more details.
Included in this release:
- Welcome to the Future with Copilot4Eclipse
- Application Servers
- Java
- Spring
- Modern Web Development
- Maven
- Miscellaneous Enhancements & Key Fixes
- Important Changes to Note
Welcome to the Future with Copilot4Eclipse
MyEclipse 2024 is compatible with Copilot4Eclipse 1.2.0, the latest release of our very own GitHub Copilot plugin for Eclipse. Inline completions, and persistable chat conversations are now fully supported.
For starters, Copilot4Eclipse can give you more intelligent content assist within your editors, from suggesting simple method invocations to generating several screens full of implementation code. With the Chat panel however, you can do even more – get it to explain some new code to you, fix your bugs, add dependencies, generate tests and even make writing documentation easier. Chat conversations are persistable, so you can come back to any number of context-rich conversations anytime.
Future versions of MyEclipse will include richer integration with Copilot’s capabilities through Copilot4Eclipse. To see Copilot4Eclipse in action, watch these videos.
Note: Copilot4Eclipse is not currently being bundled with MyEclipse, please install it from the Eclipse marketplace.
Application Servers
This release includes new connectors for Payara 6.2024 and updated support for Open Liberty Server, now supporting version 24 of this server.
Our JBoss EAP connectors were updated to work with recent versions of Red Hat JBoss EAP 8.0, and updated connectors for WildFly will work with WildFly 31 and 32. Notably, WildFly 32 preview includes some level of Jakarta EE 11 support. While we don’t support Jakarta EE 11 development yet, you can bet we’re keeping our eye on this specification for support in upcoming releases of MyEclipse. As a reminder, we do support Jakarta EE 10 development with these servers already.
And, somehow missed from MyEclipse for many a year, (and almost forgotten in these notes too) we have a new connector for WebLogic 14.
Java
Java 22 Support
With this update we add support for Java 21 and Java 22. These versions of Java are supported in our Enterprise wizards as well. Please note that MyEclipse does not ship Java 22, and you will have to configure your own JRE in Preferences > JREs to compile against this version of Java.
Some Java dev updates you’re sure to find interesting:
- New, smart, Make Static refactoring for instance methods
- Annotation based resource leak analysis
- For switch expressions, validation and quick fixes around default/break
- Better formatting for switch expressions ensures arrows are correctly aligned
- A new clean-up can replace calls to deprecated methods with inlined calls
- Ignore whitespace in compare editors is now smarter and will no longer ignore semantically significant whitespace
- Using Ctrl + Click for fields / methods will give you the option to quickly open the Call Hierarchy
Note: MyEclipse 2024.1 runs on an updated version of Java 17 under the hood – Java 17.0.11. We will be moving to Java 21 for subsequent major / minor releases
Warning: The JRE preference page (Preferences > Java > Installed JREs) includes a new preference, “Detect available JVM installations at startup” that in some circumstances, could change the default JRE in your workspace. If you notice issues around this, please confirm that your workspace has the right default.
Spring
Our Spring tooling is significantly faster and more resource efficient at validation, code completion and symbol reconciliation. This means less memory used and the ability to handle larger Spring projects seamlessly.
If you’re working with Spring boot and need to add more boot dependencies to your POM, use the Add Spring Boot Starters hint to easily do so.
The Boot dashboard will now specially indicate active profiles.
You will also notice improvements in the Spring Language server behavior too, no longer running when not required, getting stuck mid-job or taking up resources – do let us know if you still see this happening.
Modern Web Development
Angular 18 and the latest versions of Vue and React are supported by this release of MyEclipse.
Note: In .vue files, you might see duplicate content assist suggestions. To resolve this, go to Preferences > Language Servers and disable the first two Vue language servers, labeled “Vue Language Server” and “Vue Volar Language Server”.
During creation of the above projects using our Wizards, the Terminal+ view would sometimes not accept input if the CLI had questions to ask, ultimately preventing the project from being created – this issue has been addressed.
A number of additional language servers, grammars and extensions have been updated for better content assist, validation and updated language support. These include TypeScript, JavaScript, YAML, JSON, XML, etc. In that same vein, a new Language server view gives you some idea of what servers are active for your workspace.
Debugging
Under the covers, the Chrome debugger has been updated to use vscode-js-debug, no longer the deprecated vscode-chrome-debug framework. You should now have a better debug experience for modern web applications inside MyEclipse. String interpolation for JSON launch parameters is now supported; you can specify these on the Debug Adapter tab of your launch configuration. Like the following example, you can now use variables in the JSON, allowing you to check-in these configurations without system specific values.
{
“webRoot”:”${workspace_loc:/project_name}”,
}
Maven
Embedded Maven runtime has been updated to Maven version 3.9.6.
You can specify a toolchain.xml to be used in workspace builds at Preferences > Maven > User Settings. Note that the maven-toolchains-plugin is now disabled by default for workspace builds.
Source/resource folders outside your Maven project’s base directory are now added to the project as linked resources.
If you use a .mvn/maven.config file within your project for global or user settings, the tooling will now take these into account.
Miscellaneous Enhancements & Key Fixes
MyEclipse 2024.1 is now based on the Eclipse 2024-03 with core improvements to the platform and improved compatibility with recent releases of third party plugins.
Quick search terms will be displayed alongside the Quick Search title in the dialog, making it easy to distinguish between open Quick Search dialogs.
The compare editor will now display a count of the number of differences. When diffing Java files, this figure will change based on the selection in the Java Structure Compare tree.
Reporting tooling has been updated from BIRT 4.13 to BIRT 4.15, bringing with it a large number of improvements across the board from formatting and layout fixes to improved rendering. Please see these release notes for details.
Our WindowBuilder integration has been updated from version 1.12 to 1.15. Changes include support for Java 21, Jakarta annotations in E4 parts, lambda support and dozens of fixes. Release notes for more details.
Important Changes to Note
As mentioned earlier, your workspace’s default JRE could change as a result of a new, “Detect available JVM installations at startup” preference on the Preferences > Java > Installed JRE page, based on how Java is set up on your OS. In case this happens, simply go to this page to correct the default JRE.
For security reasons, HTTP is no longer supported when installing from update sites, and you must use HTTPS instead. If, for some reason you still need to use HTTP, please edit the myeclipse.ini file and add this switch at the end -Dp2.httpRule=allow
CodeTogether has been removed from the MyEclipse distribution. If you were actively using CodeTogether and had not already updated it from its public update site, it will be removed by this update. Please manually install it from the Eclipse marketplace to ensure you are working with a more recent and supported release. If you are not using CodeTogether, simply close the CodeTogether view to remove it from your perspective, if present.