A JBoss Project
Red Hat

Latest posts

JBoss Tools 4.11.0 and Red Hat CodeReady Studio 12.11 for Eclipse 2019-03 are here waiting for you. Check it out!

crstudio12

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 devstudio-<installername>.jar

JBoss Tools or Bring-Your-Own-Eclipse (BYOE) CodeReady Studio require a bit more:

This release requires at least Eclipse 4.11 (2019-03) but we recommend using the latest Eclipse 4.11 2019-03 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-03 itself has a lot of new cool stuff but let me highlight just a few updates in both Eclipse 2019-03 and JBoss Tools plugins that I think are worth mentioning.

OpenShift 3

New OpenShift connection helper

When you need to defined a new OpenShift connection, you need to provide the following information:

  • cluster URL

  • username and password or token

If you’ve already logged in your cluster through the OpenShift Web Console, you can copy an oc command in the clipboard that contains both the cluster URL and your token.

So, from now, there is a new option that allows you to initialize the wizard fields from the copied oc command:

connection wizard paste

Click on the Paste Login Command button and the fields will be initialized:

connection wizard paste1

Server tools

EAP 7.2 Server Adapter

A server adapter has been added to work with EAP 7.2.

Wildfly 15 Server Adapter

A server adapter has been added to work with Wildfly 15. It adds support for Java EE 8.

Related JIRA: JBIDE-26502

Wildfly 16 Server Adapter

A server adapter has been added to work with Wildfly 16. It adds support for Java EE 8.

Hibernate Tools

New Runtime Provider

The new Hibernate 5.4 runtime provider has been added. It incorporates Hibernate Core version 5.4.1.Final and Hibernate Tools version 5.4.1.Final

Runtime Provider Updates

The Hibernate 5.3 runtime provider now incorporates Hibernate Core version 5.3.9.Final and Hibernate Tools version 5.3.9.Final.

The Hibernate 5.2 runtime provider now incorporates Hibernate Core version 5.2.18.Final and Hibernate Tools version 5.2.12.Final.

Maven

Maven support updated to M2E 1.11

The Maven support is based on Eclipse M2E 1.11

Platform

Views, Dialogs and Toolbar

User defined resource filters in Project Explorer

The Filters and Customization…​ menu in Project Explorer now shows an additional User filters tab which can be used to exclude some resources from Project Explorer based on their name.

Full name and regular expressions are supported.

user filters
Error Log view added to Platform

The Error Log view has been moved from the PDE project to the Platform project. See bug 50517 for details.

Copy to clipboard in Installation Details

A copy to clipboard action has been added to all tabs of the Installation Details dialog.

copy installation details
Copy & paste of Environment Variables

The Environment tab in a Launch configuration dialog supports copy & paste actions now. The environment variables are transferred as text data, so it is not only possible to copy & paste between two different launch configurations, but also between the launch configuration and e.g. some text editor or the command line.

env var copy paste

This feature is available in all launch configurations which use the common Environment tab.

When Eclipse IDE is started for the first time or with a new workspace, it may not be intuitive for new users on how to proceed. To help the users in getting started, the following useful links have been provided to add a project to the workspace:

  • Perspective specific project creation wizard

  • Generic New Project wizard

  • Import projects wizard

ProjectExplorer
New mnemonics in Error Log view

New mnemonics have been added for Export Entry…​ and Event Detail entries in the context menu of Error Log view.

mneumonics

Themes and Styling

Improved Dark theme for Mac

The Dark theme for Mac has been improved to use the colors from the macOS system dark appearance. Some of the notable changes in Eclipse IDE are the dark window title bar, menus, file dialogs, combos and buttons.

Note: This change is available on macOS Mojave and later.

Before:

darktheme before

After:

darktheme after
Improved Dark theme for Windows

The drawing operations have been improved in Windows so the custom drawn icons look better now. For example, check the close icon below.

Before:

closebutton before

After:

closebutton after

General Updates

Performance improvements

The startup and interactive performance of multiple operations has been improved again in this release.

Java Developement Tools (JDT)

Java 12 Support

Java 12

Java 12 is out and Eclipse JDT supports Java 12 for 4.11 via Marketplace. The release notably includes the following Java 12 feature: JEP 325: Switch Expressions (Preview). Please note that this is a preview language feature and hence enable preview option should be on. For an informal introduction of the support, please refer to Java 12 Examples wiki.

JUnit

JUnit 5.4

JUnit 5.4 is here and Eclipse JDT has been updated to use this version.

Test factory template

JUnit Jupiter now allows test factory methods to return a single DynamicNode. The test_factory template has been updated to include DynamicNode in the return type.

junit test template

Java Editor

Default and constant values in content assist information pop-up

The additional information pop-up of a content assist proposal now shows the default value of an annotation type element:

default value annotation type elelemt

and the value of a constant:

constant value
Create service provider method

If a service defined in a module-info.java file has an invalid service provider implementation, a Quick Fix (Ctrl + 1) is now available to create the new provider method:

service provider proposal
service provider linked proposal

Java Formatter

Line wrapping settings for binary operators

Instead of a single line wrapping setting for binary expressions, there’s now a whole section of settings for various kinds of binary operators (multiplicative, additive, logical, etc.). There are settings for relational (including equality) and shift operators, which were not covered by the old setting. Also, string concatenation can now be treated differently from arithmetic sum.

The settings can be found in the Profile Editor (Preferences > Java > Code Style > Formatter > Edit…​) under the Line Wrapping > Wrapping settings > Binary expressions subsection.

formatter wrap binary expressions
White space settings for binary operators

The white space around operators in binary expressions can now be controlled separately for different groups of operators, consistent with the line wrapping settings.

The new Binary operators sub-section has been added under White Space > Expressions in the Formatter profile editor.

formatter spaces binary expressions
Wrapping setting for chained conditional expressions

A chain of nested conditional expressions (using ternary operator) can be now wrapped as a single group, with all of them indented at the same level. It’s only possible for right-sided nesting.

Find the Chained conditionals setting in the Profile Editor under the Line Wrapping > Wrapping settings > Other expressions subsection.

formatter wrap chained conditionals
Indent Javadoc tag descriptions

The Formatter Profile has a new setting that indents wrapped Javadoc tag descriptions. It’s called Indent other tag descriptions when wrapped, in contrast to the preexisting Indent wrapped @param/@throws descriptions setting. It affects tags like @return or @deprecated.

The settings can be found in the Profile Editor (Preferences > Java > Code Style > Formatter > Edit…​) under the Comments > Javadocs section.

formatter indent tags

Debug

History for expressions in the Variables view

The Variables view now stores a history of the expressions used in the Detail pane. You can choose a previously entered expression for a variable from the new drop-down menu. The expression will be copied to the Detail pane where you can select it to perform various actions present in the context menu.

expressions history

And more…​

You can find more noteworthy updates in on this page.

What is next?

Having JBoss Tools 4.11.0 and Red Hat CodeReady Studio 12.11 out we are already working on the next release for Eclipse 2019-06.

Enjoy!

Jeff Maury

We are extremely pleased to announce that the preview release of the Red Hat OpenShift Connector for JetBrains products (IntelliJ IDEA, WebStorm,…​.) is now available. You can download the OpenShift Connector plugin from the JetBrains marketplace or install it directly from the plugins gallery in JetBrains products.

This article provides describes the features and benefits of the plugin and provides installation details. It also provides a demo of how using the plugin improves the end-to-end experience of developing and deploying Spring Boot applications to your OpenShift cluster.

Benefits of using the extension

Red Hat OpenShift is a container application platform that brings the power of Kubernetes and containers to the enterprise. Regardless of the applications architecture, OpenShift lets you easily and quickly build, develop, and deploy in nearly any infrastructure, public or private.

Therefore, whether it’s on-premises, in a public cloud, or hosted, you have an award-winning platform to get your next big idea to market ahead of your competition.

Using OpenShift Connector, you can interact with any Red Hat OpenShift including a local instance of OpenShift clusters such as minishift/Red Hat Container Development Kit. Leveraging the OpenShift Application Explorer view, you can improve the end-to-end experience of developing applications.

The plugin enables you to perform all this directly using JetBrains products (IntelliJ IDEA, WebStorm,…​.) on Windows, Linux and macOS platforms and removes the complexity of memorizing some fairly complicated CLI commands.

Once the OpenShift Connector is installed, a new panel, the OpenShift view, is enabled in the Explorer panel. Then, you can access the view and connect to a running OpenShift cluster to perform the required operations.

Demo

You can see a live demo of the plugin here:

Below are the steps to run the demonstration by yourself

Installation

First, you will need to install any JetBrains product (IntelliJ IDEA, WebStorm,…​.) 2018.1 or later.

To install the plugin, bring up the plugins configuration dialog: File → Settings → Plugins:

ij openshift connector

In the search bar, enter OpenShift and click on the OpenShift Connector by Red Hat item:

ij openshift connector1

Click the Install button:

ij openshift connector2

Once the plugin has been downloaded, click the Restart IDE button.

Once the IDE has been restarted, mouse over the Views icon in the bottom left area:

ij openshift connector3

Select the OpenShift item:

ij openshift connector4

The plugin in action

Connecting to your OpenShift instance

  1. If you’re working locally, start the local OpenShift instance using minishift/Red Hat Container Development Kit

  2. You then need to log in to the running OpenShift cluster: right click on the cluster URL tree node and select Log in to cluster.

ij openshift connector5

Enter developer in the Username field and any value in the Password field and press the OK button:

ij openshift connector6

Import the project to be deployed

Before we work with our local cluster, first import our application source code. We will use a simple Spring Boot application whose source code is located at https://github.com/openshift-evangelists/Wild-West-Backend.

In order to import the application, use the File → New → Project from Version Control → Git:

ij openshift connector7

Enter https://github.com/openshift-evangelists/Wild-West-Backend in the URL field and press the Clone button.

Create a project for the application

The application will be hosted in an OpenShift project (similar to Kubernetes namespaces). For more information about OpenShift projects, see the official documentation

In the OpenShift view, right click on the cluster node (the one with the URL) and select New Project:

ij openshift connector8

Enter spring-boot in the Project name and press the OK button:

ij openshift connector9

Create the application

In the spring-boot node, right click and select New Application:

ij openshift connector10

Enter springbootapp in the Application name field and press the OK button:

ij openshift connector11

Deploy the component

In the springbootapp node, right click and select New Component:

ij openshift connector12

Enter backend in the Name field:

ij openshift connector13

Press the Browse button:

ij openshift connector14

Select the Wild-West-Backend project and press the OK button:

ij openshift connector15

In the Component type field, select the java item:

ij openshift connector16

Press the OK button. A new terminal window will be displayed and the component will be deployed to your local cluster.

ij openshift connector17
On IntelliJ IDEA 2018.3 or 2018.3 based JetBrains products, the terminal window will be automatically closed when the underlying command process is terminated. We are working for a workaround but we recommend to use previous versions until the plugin will be updated. See the issue for more information

Once deployed, the component will appear in the OpenShift view:

ij openshift connector18

Testing the component

Let’s try to test the deployed application in a browser. In the OpenShift view, right click the backend node and select Open in Browser:

ij openshift connector19

As no URL has been set up for our component (to allow external access to our application), press the OK button:

ij openshift connector20

As our application is exposing several ports, we need to select one: choose the 8080 one and press the OK button. The following brower window should be displayed:

ij openshift connector21

Don’t worry, the error message is displayed because our application has no mapping for the root. Append /egg in the URL bar in the browser window and press the ENTER key:

ij openshift connector22

Inner loop

In the following scenario, we will modify locally the application source code and verify that the modification is broadcasted immediatly to the cluster. Let’s switch our application in watch mode so that every local modification is sent to the cluster:

In the OpenShift view, right click the backend node and select Watch:

ij openshift connector23

Now, in the Project view, open the src/main/java/com/openshift/wildwest/APIController.java file:

ij openshift connector24

Modify the egg method:

	@RequestMapping("/egg")
	public String easterEgg() {
		return "Every game needs an easter egg!!";
	}

with the following content:

	@RequestMapping("/egg")
	public String easterEgg() {
		return "A change from inside my ide";
	}

Refresh the browser window and you should see the following output:

ij openshift connector25

Enjoy!

Jeff Maury

JBoss Tools 4.12.0.AM1 for Eclipse 2019-06

by Jeff Maury on Jun 12, 2019.

Integration Tooling for Eclipse 2019-03

by Paul Leacu on May 30, 2019.

Quarkus

by Jeff Maury on May 13, 2019.

Looking for older posts ? See the Archived entries.
back to top