JBoss Tools 4.12.0 and Red Hat CodeReady Studio 12.12 for Eclipse 2019-06 are here waiting for you. Check it out!
Installation
Red Hat CodeReady Studio comes with everything pre-bundled in its installer. Simply download it from our Red Hat CodeReady product page and run it like this:
java -jar codereadystudio-<installername>.jar
JBoss Tools or Bring-Your-Own-Eclipse (BYOE) CodeReady Studio require a bit more:
This release requires at least Eclipse 4.12 (2019-06) but we recommend using the latest Eclipse 4.12 2019-06 JEE Bundle since then you get most of the dependencies preinstalled.
Once you have installed Eclipse, you can either find us on the Eclipse Marketplace under "JBoss Tools" or "Red Hat CodeReady Studio".
For JBoss Tools, you can also use our update site directly.
http://download.jboss.org/jbosstools/photon/stable/updates/
What is new?
Our main focus for this release was improvements for container based development and bug fixing. Eclipse 2019-06 itself has a lot of new cool stuff but let me highlight just a few updates in both Eclipse 2019-06 and JBoss Tools plugins that I think are worth mentioning.
OpenShift
OpenShift Container Platform 4 support
With the new OpenShift Container Platform (OCP) 4 now available (see this article), even if this is a major shift compared to OCP 3, JBoss Tools is compatible with this major release in a transparent way. Just define your connection to your OCP 4 based cluster as you did before for an OCP 3 cluster, and use the tooling !
Hibernate Tools
Platform
Views, Dialogs and Toolbar
Import project by passing it as command-line argument
You can import a project into Eclipse by passing its path as a parameter to the
launcher. The command would look like
on Linux and Windows,
or eclipse /path/to/project
on macOS.open Eclipse.app -a /path/to/project
Launch Run and Debug configurations from Quick Access
From the Quick Access proposals (accessible with
shortcut) you can now directly launch
any of the Run or Debug configurations available in your workspace.Ctrl+3
For performance reasons, the extra Quick Access entries are only visible if the
bundle was already activated by some previous action in the workbench such as editing a launch configuration,
or expanding the Run As… menus.
|
Themes and Styling
Improved View Menu Icon
The icon used for the view menu has been improved. It is now crisp on high resolution displays and also looks much better in the dark theme.
Compare the old version at the top and the new version at the bottom:
High resolution images drawn on Mac
On Mac, images and text are now drawn in high resolution during GC operations. You can see crisp images on high resolution displays in the editor rulers, forms, etc in Eclipse.
Compare the old version at the top and the new version at the bottom:
Table/Tree background lines shown in dark theme on Mac
In dark theme on Mac, the Table and Trees in Eclipse now show the alternating dark lines
in the background when
is set. Earlier they had a gray background
even if line visibility was true.setLinesVisible(true)
Example of a Tree and Table in Eclipse with alternating dark lines in the background:
Equinox
When the Equinox OSGi Framework is launched the installed bundles are activated according to their configured start-level. The bundles with lower start-levels are activated first. Bundles within the same start-level are activated sequentially from a single thread.
A new configuration option
has been added that enables
the framework to start bundles within the same start-level in parallel. The default value is equinox.start.level.thread.count
which keeps the previous behavior of activating bundles from a single thread.
Setting the value to 1
enables parallel activation using a thread count equal
to 0
. Setting the value to a number greater than Runtime.getRuntime().availableProcessors()
will use the specified number as the thread count for parallel bundle activation.1
The default is
because of the risk of possible deadlock when activating bundles in parallel.
Extensive testing must be done on the set of bundle installed in the framework before considering
enabling this option in a product.1
Java Developement Tools (JDT)
Java 12 Support
Change project compliance and JRE to 12
A quick fix Change project compliance and JRE to 12 is provided to change the current project to be compatible with Java 12.
Enable preview features
Preview features in Java 12 can be enabled using Preferences > Java > Compiler > Enable preview features option. The problem severity of these preview features can be configured using the Preview features with severity level option.
Set Enable preview features
A quick fix Configure problem severity is provided to update the problem severity of preview features in Java 12.
Add default case to switch statement
A quick fix Add 'default' case is provided to add default case to a enhanced switch statement in Java 12.
Add missing case statements to switch statement
A quick fix Add missing case statements is provided for a enhanced switch statement in Java 12.
Add default case to switch expression
A quick fix Add 'default' case is provided to add default case to a switch expression.
Add missing case statements to switch expression
A quick fix Add missing case statements is provided for switch expressions.
Format whitespaces in 'switch'
As Java 12 introduced some new features into the
construct, the formatter profile
has some new settings for it. The settings allow you to control spaces around the arrow operator
(separately for switch
and case
) and around commas in a multi-value case.default
The settings can be found in the Profile Editor (Preferences > Java > Code Style > Formatter > Edit…) under the White space > Control statements > 'switch' subsection.
Java Editor
Show method parameter names on code as code minings
In the Java > Editor > Code Mining preferences, you can now enable the Show parameter names option. This will show the parameter names as code minings in method or constructor calls, for cases where the resolution may not be obvious for a human reader.
For example, the code mining will be shown if the argument name in the method call is not an exact match of the parameter name or if the argument name doesn’t contain the parameter name as a substring.
Show number of implementations of methods as code minings
In the Java > Editor > Code Mining preferences, selecting Show implementations with the Show References (including implementations) for → Methods option now shows implementations of methods.
Clicking on method implementations brings up the Search view that shows all implementations of the method in sub-types.
Open single implementation/reference in editor from code mining
When the Java > Editor > Code Mining preferences are enabled and a single implementation or reference is shown, moving the cursor over the annotation and using Ctrl+Click will open the editor and display the single implementation or reference.
Additional quick fixes for service provider constructors
Appropriate quick fixes are offered when a service defined in a
file has a service provider
implementation whose no-arg constructor is not visible, or is non-existent.module-info.java
Template to create Switch Labeled Statement and Switch Expressions
The Java Editor now offers new templates for the creation of switch labeled statements and switch expressions. On a switch statement, three new templates: switch labeled statement, switch case expression and switch labeled expression are available as shown below. These new templates are available on Java projects having compliance level of Java 12 or above.
If switch is being used as an expression, then only switch case expression and switch labeled expression templates are available as shown below:
Java Views and Dialogs
Enable comment generation in modules and packages
An option is now available to enable/disable the comment generation while
creating
or module-info.java
.package-info.java
Improved 'create getter and setter' quick assist
The quick assist for creating getter and setter methods from fields no longer forces you to create both.
Quick fix to open all required closed projects
A quick fix to open all required closed projects is now available in the Problems view.
New UI for configuring Module Dependencies
The Java Build Path configuration now has a new tab Module Dependencies, which will gradually replace
the options previously hidden behind the Is Modular node on other tabs of this dialog. The new tab provides
an intuitive way for configuring all those module-related options for which Java 9 had introduced new command
line options like
etc.--limit-modules
The dialog focuses on how to build one Java Project, here "org.greetings".
Below this focus module, the left hand pane shows all modules that participate in the build, where decorations
A and S mark automatic modules and system modules, respectively. The extent of system modules (from JRE)
can be modified with the Add System Module… and Remove buttons (corresponds to
and --add-modules
).--limit-modules
When a module is selected in the left hand pane, the right hand pane allows to configure the following properties for this module:
Read Module:
Select additional modules that should be accessible from the selected module (corresponds to
)--add-reads
Expose Package:
Select additional packages to be exposed ("exports" or "opens") from the selected module (corresponds
to
or --add-exports
)--add-opens
Patch with:
Add more packages and classes to the selected module (corresponds to
)--patch-module
Java Compiler
Experimental Java index retired
Eclipse 4.7 introduced a new experimental Java index which was disabled by default.
Due to lack of resources to properly support all Java 9+ language changes, this index is not available anymore starting with Eclipse 4.12.
The preference to enable it in Preferences > Java is removed and the old index will be always used.
Preferences > Java > Rebuild Index button can be used to delete the existing index files and free disk space. |
Debug
'Run to Line' on Ctrl+Alt+Click in annotation ruler
A new shortcut, Ctrl+Alt+Click, has been added to the annotation ruler that will invoke the 'Run to Line' command and take the program execution to the line of invocation.
Content assist in Debug Shell
Content assist (Ctrl+Space) support is now available in the Debug Shell.
And more…
You can find more noteworthy updates in on this page.