IBM Support

Known problems and limitations in IBM Liberty Developer Tools

Release Notes


Abstract

This page contains known issues for the current supported versions of IBM Liberty Developer Tools - v25.2 and v25.1. Additionally, known issues for unsupported versions v24.1, v23.2, v23.1 and v22.2 have been preserved.

Content

Customers installing IBM Liberty Developer Tools are encouraged to read all technotes before installation (go to https://www.ibm.com/community/101/websphere/technotes/ and search for "Developer Tools"). The information below highlights key issues and related technical guidance for known issues with specific releases and environment configurations.

 

IBM Liberty Developer Tools v25.2

SymptomWorkaround

Eclipse's auto-generated URL is malformed for Jakarta project (Java EE Version > 8) when right click on project and clicked on Run on server option from servlet class . However, the application deploys successfully and responds correctly when accessed via the correct URL http(s)://<ip-address>:<port>/<project-name>/<url-pattern>.

 

Manually enter the standard format on the browser to test - http(s)://<ip-address>:<port>/<project-name>/<url-pattern>.

 

When creating a SIP 1.1 (JSR 116) project using WebSphere Developer Tools with Liberty runtime version 25.0.0.12, the project is automatically assigned Web facet version greater than 4.0. The Wizard will allow SIP 1.1 projects to be created with Web facet versions 5.0 or 6.0. As per [Open Liberty Docs Overview](https://openliberty.io/docs/latest/reference/feature/sipServlet-1.1.html), the SIP 1.1 feature only enables servlet features servlet-3.1 and servlet-4.0. Hence in the project Facet, the dynamic web project version facet version should only be in the range 3.1 - 4.0.

 

Manually open the Project Facets configuration in Eclipse IDE, inspect the version of facet Dynamic Web Module and manually set the version to 4.0 if the version set is greater than 4.0.

 

When creating an Enterprise Application Project (EAP) using the creation wizard with the "new modules" option, the Application Client module is automatically generated with the latest supported facet version regardless of the selected EAP version. This may result in version incompatibility between the Application Client and the target EAP, preventing the generated modules from being properly attached to the resulting Enterprise Application.

 

Option 1: Skip Application Client during wizard creation
In the EAP creation wizard's "New Modules" page, uncheck the Application Client option
Create the Application Client module separately after the EAP is created with the correct facet version

Option 2: Manually fix version incompatibility

  1. After the EAP and Application Client projects are created, manually update the Application Client's facet version to match the EAP's compatible version:
    1. Right-click the Application Client project
    2. Select Properties → Project Facets
    3. Adjust the Application Client version to be compatible with your EAP
  2. Manually add the modules to the EAP:
    1. Right-click the EAP project in Project Explorer
    2. Select Properties → Deployment Assembly
    3. Click Add and select the modules
    4. Apply and save the changes

 

Sometimes when right clicking an EAR project and selecting java ee tools -> Generate Deployment Descriptor Stub it generates a stub which doesn't include modules inside it.

This is due to a bug in Eclipse.
Manually delete the deployment descriptor and try again. It seems to alternate between creating an application.xml file without stubs and one with stubs each time you retry (delete the file first to enable the menu item).
When creating web services, the following error can be encountered:
status:Status ERROR: id code=0 IWAB0506E Error when copying Axis jar files to web project java.io.FileNotFoundException: /lib/axis.jar
status:Status ERROR: id code=0 IWAB0506E Error when copying Axis jar files to web project java.io.FileNotFoundException: /lib/commons-discovery-0.2.jar
junit.framework.AssertionFailedError: Errors seen: {[error:+Status ERROR: id code=0 IWAB0506E Error when copying Axis jar files to web project java.io.FileNotFoundException: /lib/axis.jar]
[error:+Status ERROR: id code=0 IWAB0506E Error when copying Axis jar files to web project java.io.FileNotFoundException: /lib/commons-discovery-0.2.jar]
}
    at junit.framework.Assert.fail(Assert.java:57)
    at junit.framework.Assert.assertTrue(Assert.java:22)
    at junit.framework.TestCase.assertTrue(TestCase.java:192)
    at com.ibm.ast.ws.tests.framework.WSWizardTest.assertZeroNonInfoIStatus(WSWizardTest.java:394)
    at com.ibm.ast.ws.tests.v85.tests.axis.BJW85Axis.doTestBJW85Axis(BJW85Axis.java:105)
    at com.ibm.ast.ws.tests.v85.tests.axis.BJW85Axis_E2E.innerTest(BJW85Axis_E2E.java:115)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
This is due to an eclipse bug. For details, please see https://github.com/eclipse-webservices/webservices/issues/3

No current workaround is available.

 

When using the Docker Tooling perspective to pull an image, you could encounter the following error: org.mandas.docker.client.exceptions.DockerException: java.io.IOException: Cannot run program "docker-credential-desktop": error=2, No such file or directory.
 
To workaround this issue, go to ~/.docker/config.json and change credsStore to credStore. You can also use docker pull manually to pull down the image you need rather than using the tooling. Issue raised here.
 
There is no warning provided if you try to use incompatible features in a Liberty server, e.g. servlet-3.0 and servlet-3.1 in server.xml
 
Remove the incompatible feature
During a Gradle build, you receive java.lang.IllegalArgumentException: Unsupported class file major version XX , where xx is a number. This is due to a clash between the version of Java that the default Gradle version being specified is expecting, and the version of Java being used in LDT/Eclipse.

Set system property GRADLE_VERSION_OVERRIDE to a version of Gradle that supports the version of Java being used in LDT/Eclipse.

 

When creating or importing a project which uses the Liberty Gradle plugin version 3.x, no prompt appears to create a runtime and server for the project.
The problem occurs because the gradle plugin no longer specifies a default location for the server.xml, it just defines a default folder containing config files. This results in the build/liberty-plugin-config.xml not having a liberty-plugin-config/servers/server/configFile element which the Open Liberty Tools are looking for.
 
Manually specify the location of the server.xml in the build.gradle file like this:
liberty {
    server {
        serverXmlFile = file('src/main/liberty/config/server.xml')
    }
}
When generating a web service into an OSGi app and completing the wizard, a dialog appears saying that the app hasn't started successfully. At this point, the Liberty server logs report: The application JWS_OSGi_BU.app could not be started as it could not be found at location JWS_OSGi_BU.app.eba.
 
Clicking "Finish" again deploys the app and the wizard completes successfully.
When creating and deploying a web service client using the Generate Web Service wizard, Eclipse could wrongly report that the generated client has validation errors and might not deploy correctly.
 
In this case, try clicking OK to continue with the deployment. Once the wizard has completed, check for error markers on the web service client project.

 

IBM Liberty Developer Tools v25.1

SymptomWorkaround
Due to an update to the WTP plugin, LDT will allow a user to select the Dynamic Web Project facet v5.0 or above. It is also possible for EAR projects to have the EAR project facet set above version 8.0. Unfortunately, these versions of the facet are Jakarta EE 9, which LDT does not support. This selection will fail to work as expected.
 
For Jakarta EE9 support, please consider using Liberty Tools, our next-generation open source development tools.
Jakarta EE, Dynamic Web Project facets above version v4.0 and EAR Project facets above version 8.0 are not supported at this time.
If a Liberty runtime is selected upon project import, the tool will not allow Dynamic Web Project facet versions above v4.0 to be selected or deployed.
 
To keep these versions, the application may be deployed by modifying the server.xml instead of using the tooling.
 
Alternatively, if a project is set to a higher version it can be downgraded to v4.0 for the Dynamic Web Project and v8.0 for the EAR project facets and deployed via the tooling.
For Eclipse 2025-03, Web Fragments fail to publish
This is due to a bug in Eclipse.
Sometimes when right clicking an EAR project and selecting java ee tools -> Generate Deployment Descriptor Stub it generates a stub which doesn't include modules inside it.
This is due to a bug in Eclipse.
Manually delete the deployment descriptor and try again. It seems to alternate between creating an application.xml file without stubs and one with stubs each time you retry (delete the file first to enable the menu item).
 
You encounter the following error when publishing a Jakarta EE application to the server:
[WARNING ] CWWKF0046W: The configuration includes an incompatible combination of features.
As a result, the feature manager did not install any features.
WDT adds Java EE features for Jakarta EE applications and the server reports the error as feature conflicts.
 
After the server has been started, comment out or delete the Java EE features from your server.xml file, and save it so that the server picks up the changes.
Note that it is important to make the changes while the server is started. If you make the changes while the server is stopped, the Java EE features will be added back again when the server is started.
When creating web services, the following error can be encountered:
status:Status ERROR: id code=0 IWAB0506E Error when copying Axis jar files to web project java.io.FileNotFoundException: /lib/axis.jar
status:Status ERROR: id code=0 IWAB0506E Error when copying Axis jar files to web project java.io.FileNotFoundException: /lib/commons-discovery-0.2.jar
junit.framework.AssertionFailedError: Errors seen: {[error:+Status ERROR: id code=0 IWAB0506E Error when copying Axis jar files to web project java.io.FileNotFoundException: /lib/axis.jar]
[error:+Status ERROR: id code=0 IWAB0506E Error when copying Axis jar files to web project java.io.FileNotFoundException: /lib/commons-discovery-0.2.jar]
}
    at junit.framework.Assert.fail(Assert.java:57)
    at junit.framework.Assert.assertTrue(Assert.java:22)
    at junit.framework.TestCase.assertTrue(TestCase.java:192)
    at com.ibm.ast.ws.tests.framework.WSWizardTest.assertZeroNonInfoIStatus(WSWizardTest.java:394)
    at com.ibm.ast.ws.tests.v85.tests.axis.BJW85Axis.doTestBJW85Axis(BJW85Axis.java:105)
    at com.ibm.ast.ws.tests.v85.tests.axis.BJW85Axis_E2E.innerTest(BJW85Axis_E2E.java:115)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
This is due to an eclipse bug. For details, please see https://github.com/eclipse-webservices/webservices/issues/3
No current workaround is available.
If you have two Liberty runtimes each controlling different remote servers, you could hit java.lang.NullPointerException: Cannot invoke "com.ibm.ws.st.ui.internal.wizard.WebSphereServerParentComposite.getChildren()" because "this.comp" is null
Workaround: controlling multiple remote servers with the same local runtime works.
When using the Docker Tooling perspective to pull an image, you could encounter the following error: org.mandas.docker.client.exceptions.DockerException: java.io.IOException: Cannot run program "docker-credential-desktop": error=2, No such file or directory.
To workaround this issue, go to ~/.docker/config.json and change credsStore to credStore. You can also use docker pull manually to pull down the image you need rather than using the tooling. Issue raised here.
There is no warning provided if you try to use incompatible features in a Liberty server, e.g. servlet-3.0 and servlet-3.1 in server.xml
Remove the incompatible feature
During a Gradle build, you receive java.lang.IllegalArgumentException: Unsupported class file major version XX , where xx is a number. This is due to a clash between the version of Java that the default Gradle version being specified is expecting, and the version of Java being used in LDT/Eclipse.
Set system property GRADLE_VERSION_OVERRIDE to a version of Gradle that supports the version of Java being used in LDT/Eclipse.
 
When creating or importing a project which uses the Liberty Gradle plugin version 3.x, no prompt appears to create a runtime and server for the project.
This can be worked around by manually specifying the location of the server.xml file in the build.Gradle file which is detailed in this issue.
When generating a web service into an OSGi app and completing the wizard, a dialog appears saying that the app hasn't started successfully. At this point, the Liberty server logs report: The application JWS_OSGi_BU.app could not be started as it could not be found at location JWS_OSGi_BU.app.eba.
Clicking "Finish" again deploys the app and the wizard completes successfully.
When creating and deploying a web service client using the Generate Web Service wizard, Eclipse could wrongly report that the generated client has validation errors and might not deploy correctly.
In this case, try clicking OK to continue with the deployment. Once the wizard has completed, check for error markers on the web service client project.
When creating or importing a project which uses the Liberty Gradle plugin version 3.x, no prompt appears to create a runtime and server for the project.
The problem occurs because the gradle plugin no longer specifies a default location for the server.xml, it just defines a default folder containing config files. This results in the build/liberty-plugin-config.xml not having a liberty-plugin-config/servers/server/configFile element which the Open Liberty Tools are looking for.
Manually specify the location of the server.xml in the build.gradle file like this:
liberty {
    server {
        serverXmlFile = file('src/main/liberty/config/server.xml')
    }
}

 

 

IBM Liberty Developer Tools v24.1

SymptomWorkaround
Sometimes when right clicking an EAR project and selecting java ee tools -> Generate Deployment Descriptor Stub it generates a stub which doesn't include modules inside it.
Manually delete the deployment descriptor and try again. It seems to alternate between creating an application.xml file without stubs and one with stubs each time you retry (delete the file first to enable the menu item).
 
You encounter the following error when publishing a Jakarta EE application to the server:
[WARNING ] CWWKF0046W: The configuration includes an incompatible combination of features.
As a result, the feature manager did not install any features.
WDT adds Java EE features for Jakarta EE applications and the server reports the error as feature conflicts.
 
After the server has been started, comment out or delete the Java EE features from your server.xml file, and save it so that the server picks up the changes.
Note that it is important to make the changes while the server is started. If you make the changes while the server is stopped, the Java EE features will be added back again when the server is started.
When creating web services, the following error can be encountered:
status:Status ERROR: id code=0 IWAB0506E Error when copying Axis jar files to web project java.io.FileNotFoundException: /lib/axis.jar
status:Status ERROR: id code=0 IWAB0506E Error when copying Axis jar files to web project java.io.FileNotFoundException: /lib/commons-discovery-0.2.jar
junit.framework.AssertionFailedError: Errors seen: {[error:+Status ERROR: id code=0 IWAB0506E Error when copying Axis jar files to web project java.io.FileNotFoundException: /lib/axis.jar]
[error:+Status ERROR: id code=0 IWAB0506E Error when copying Axis jar files to web project java.io.FileNotFoundException: /lib/commons-discovery-0.2.jar]
}
    at junit.framework.Assert.fail(Assert.java:57)
    at junit.framework.Assert.assertTrue(Assert.java:22)
    at junit.framework.TestCase.assertTrue(TestCase.java:192)
    at com.ibm.ast.ws.tests.framework.WSWizardTest.assertZeroNonInfoIStatus(WSWizardTest.java:394)
    at com.ibm.ast.ws.tests.v85.tests.axis.BJW85Axis.doTestBJW85Axis(BJW85Axis.java:105)
    at com.ibm.ast.ws.tests.v85.tests.axis.BJW85Axis_E2E.innerTest(BJW85Axis_E2E.java:115)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
This is due to an eclipse bug. For details, please see https://github.com/eclipse-webservices/webservices/issues/3
No current workaround is available.
If you have two Liberty runtimes each controlling different remote servers, you could hit java.lang.NullPointerException: Cannot invoke "com.ibm.ws.st.ui.internal.wizard.WebSphereServerParentComposite.getChildren()" because "this.comp" is null
Workaround: controlling multiple remote servers with the same local runtime works.
When using the Docker Tooling perspective to pull an image, you could encounter the following error: org.mandas.docker.client.exceptions.DockerException: java.io.IOException: Cannot run program "docker-credential-desktop": error=2, No such file or directory.
To workaround this issue, go to ~/.docker/config.json and change credsStore to credStore. You can also use docker pull manually to pull down the image you need rather than using the tooling. Issue raised here.
There is no warning provided if you try to use incompatible features in a Liberty server, e.g. servlet-3.0 and servlet-3.1 in server.xml
Remove the incompatible feature
During a Gradle build, you receive java.lang.IllegalArgumentException: Unsupported class file major version XX , where xx is a number. This is due to a clash between the version of Java that the default Gradle version being specified is expecting, and the version of Java being used in LDT/Eclipse.
Set system property GRADLE_VERSION_OVERRIDE to a version of Gradle that supports the version of Java being used in LDT/Eclipse.
 
When creating or importing a project which uses the Liberty Gradle plugin version 3.x, no prompt appears to create a runtime and server for the project.
This can be worked around by manually specifying the location of the server.xml file in the build.Gradle file which is detailed in this issue.
When generating a web service into an OSGi app and completing the wizard, a dialog appears saying that the app hasn't started successfully. At this point, the Liberty server logs report: The application JWS_OSGi_BU.app could not be started as it could not be found at location JWS_OSGi_BU.app.eba.
Clicking "Finish" again deploys the app and the wizard completes successfully.
When creating and deploying a web service client using the Generate Web Service wizard, Eclipse could wrongly report that the generated client has validation errors and might not deploy correctly.
In this case, try clicking OK to continue with the deployment. Once the wizard has completed, check for error markers on the web service client project.
When creating or importing a project which uses the Liberty Gradle plugin version 3.x, no prompt appears to create a runtime and server for the project.
The problem occurs because the gradle plugin no longer specifies a default location for the server.xml, it just defines a default folder containing config files. This results in the build/liberty-plugin-config.xml not having a liberty-plugin-config/servers/server/configFile element which the Open Liberty Tools are looking for.
Manually specify the location of the server.xml in the build.gradle file like this:
liberty {
    server {
        serverXmlFile = file('src/main/liberty/config/server.xml')
    }
}
Due to an update to the WTP plugin, LDT will allow a user to select the Dynamic Web Project facet v5.0. Unfortunately, this version of the facet uses Jakarta EE9, which LDT does not support. This selection will fail to work as expected.
None - Jakarta EE and Dynamic Web Project facet v5.0 are not supported at this time

 

 

IBM Liberty Developer Tools v23.2

SymptomWorkaround
Sometimes when right clicking an EAR project and selecting java ee tools -> Generate Deployment Descriptor Stub it generates a stub which doesn't include modules inside it.
Manually delete the deployment descriptor and try again. It seems to alternate between creating an application.xml file without stubs and one with stubs each time you retry (delete the file first to enable the menu item).
 
You encounter the following error when publishing a Jakarta EE application to the server:
[WARNING ] CWWKF0046W: The configuration includes an incompatible combination of features.
As a result, the feature manager did not install any features.
WDT adds Java EE features for Jakarta EE applications and the server reports the error as feature conflicts.
 
After the server has been started, comment out or delete the Java EE features from your server.xml file, and save it so that the server picks up the changes.
Note that it is important to make the changes while the server is started. If you make the changes while the server is stopped, the Java EE features will be added back again when the server is started.
When importing a Gradle app you can receive " 'Auto share git projects' has encountered a problem. Connecting Git team provider failed. See log for details"
If you are trying to Auto share the project then configure eGit. If you are not then go to Preferences > Version Control (Team) > Git > Projects > and untick "Automatically share projects located in a Git repository"
If you have two Liberty runtimes each controlling different remote servers, you could hit java.lang.NullPointerException: Cannot invoke "com.ibm.ws.st.ui.internal.wizard.WebSphereServerParentComposite.getChildren()" because "this.comp" is null
Workaround: controlling multiple remote servers with the same local runtime works.
When using the Docker Tooling perspective to pull an image, you could encounter the following error: org.mandas.docker.client.exceptions.DockerException: java.io.IOException: Cannot run program "docker-credential-desktop": error=2, No such file or directory.
To workaround this issue, go to ~/.docker/config.json and change credsStore to credStore. You can also use docker pull manually to pull down the image you need rather than using the tooling. Issue raised here.
There is no warning provided if you try to use incompatible features in a Liberty server, e.g. servlet-3.0 and servlet-3.1 in server.xml
Remove the incompatible feature
During a Gradle build, you receive java.lang.IllegalArgumentException: Unsupported class file major version 61. Issue raised against Eclipse as they do not ship a Java 17 compatible version of the Gradle Tooling api (issue here).
Set system property GRADLE_VERSION_OVERRIDE and LDT will use that value instead of the one the Gradle plug-in says to use. This only works if code requesting the Gradle version is LDT. If it's a plug-in (e.g. Liberty Gradle plug-in) this workaround won't help.
When creating or importing a project which uses the Liberty Gradle plugin version 3.x, no prompt appears to create a runtime and server for the project.
This can be worked around by manually specifying the location of the server.xml file in the build.Gradle file which is detailed in this issue.
When generating a web service into an OSGi app and completing the wizard, a dialog appears saying that the app hasn't started successfully. At this point, the Liberty server logs report: The application JWS_OSGi_BU.app could not be started as it could not be found at location JWS_OSGi_BU.app.eba.
Clicking "Finish" again deploys the app and the wizard completes successfully.
When creating and deploying a web service client using the Generate Web Service wizard, Eclipse could wrongly report that the generated client has validation errors and might not deploy correctly.
In this case, try clicking OK to continue with the deployment. Once the wizard has completed, check for error markers on the web service client project.
Aesthetic inconsistencies present in some wizards when using dark mode
No work-around available
Due to an update to the WTP plugin, LDT will allow a user to select the Dynamic Web Project facet v5.0. Unfortunately, this version of the facet uses Jakarta EE9, which LDT does not support. This selection will fail to work as expected.
None - Jakarta EE and Dynamic Web Project facet v5.0 are not supported at this time.

 

 

IBM Liberty Developer Tools v23.1

General known issues

SymptomWorkaround
After installation, Maven integration is broken or failing. When further inspecting the Eclipse log file, the following entry may be seen:
"org.osgi.framework.BundleException: Could not resolve module: org.eclipse.jst.server.preview.adapter [529]"

This is an Eclipse bug being fixed under https://bugs.eclipse.org/bugs/show_bug.cgi?id=582183

To work around this problem, add the following:
jakarta.enterprise.cdi-api,2.0.2,plugins/jakarta.enterprise.cdi-api_2.0.2.jar,4,false

anywhere in the file:

${eclipse_install_directory}/configuration/org.eclipse.equinox.simpleconfigurator/bundles.info

You encounter the following error when publishing a Jakarta EE application to the server:
[WARNING ] CWWKF0046W: The configuration includes an incompatible combination of features.
As a result, the feature manager did not install any features.
WDT adds Java EE features for Jakarta EE applications and the server reports the error as feature conflicts.
 
After the server has been started, comment out or delete the Java EE features from your server.xml file, and save it so that the server picks up the changes.
Note that it is important to make the changes while the server is started. If you make the changes while the server is stopped, the Java EE features will be added back again when the server is started.
You encounter the following error in a Maven project:
"Conflicting lifecycle mapping metadata (project packaging type="bundle"): Mapping defined in 'org.eclipse.m2e.pde.connector_2.1.2.20221218-1726 [613]' and 'com.ibm.etools.aries.maven.core_1.0.210.v20230524_2057 [988]'. To enable full functionality, remove the conflicting mapping and run Maven->Update Project Configuration."
Right-click on the error, select Quick Fix and choose Ignore M2E PDE Connector for bundle in eclipse preferences.
Run Maven > Update Project Configuration on the project.
 
image
When importing a Gradle app you can receive " 'Auto share git projects' has encountered a problem. Connecting Git team provider failed. See log for details"
If you are trying to Auto share the project then configure eGit. If you are not then go to Preferences > Version Control (Team) > Git > Projects > and untick "Automatically share projects located in a Git repository"
If you have two Liberty runtimes each controlling different remote servers, you could hit java.lang.NullPointerException: Cannot invoke "com.ibm.ws.st.ui.internal.wizard.WebSphereServerParentComposite.getChildren()" because "this.comp" is null
Workaround: controlling multiple remote servers with the same local runtime works.
When using the Docker Tooling perspective to pull an image, you could encounter the following error: org.mandas.docker.client.exceptions.DockerException: java.io.IOException: Cannot run program "docker-credential-desktop": error=2, No such file or directory.
To workaround this issue, go to ~/.docker/config.json and change credsStore to credStore. You can also use docker pull manually to pull down the image you need rather than using the tooling. Issue raised here.
There is no warning provided if you try to use incompatible features in a Liberty server, e.g. servlet-3.0 and servlet-3.1 in server.xml
Remove the incompatible feature
During a Gradle build, you receive java.lang.IllegalArgumentException: Unsupported class file major version 61. Issue raised against Eclipse as they do not ship a Java 17 compatible version of the Gradle Tooling api (issue here).
Set system property GRADLE_VERSION_OVERRIDE and LDT will use that value instead of the one the Gradle plug-in says to use. This only works if code requesting the Gradle version is LDT. If it's a plug-in (e.g. Liberty Gradle plug-in) this workaround won't help.
When creating or importing a project which uses the Liberty Gradle plugin version 3.x, no prompt appears to create a runtime and server for the project.
This can be worked around by manually specifying the location of the server.xml file in the build.Gradle file which is detailed in this issue.
When generating a web service into an OSGi app and completing the wizard, a dialog appears saying that the app hasn't started successfully. At this point, the Liberty server logs report: The application JWS_OSGi_BU.app could not be started as it could not be found at location JWS_OSGi_BU.app.eba.
Clicking "Finish" again deploys the app and the wizard completes successfully.
When creating and deploying a web service client using the Generate Web Service wizard, Eclipse could wrongly report that the generated client has validation errors and might not deploy correctly.
In this case, try clicking OK to continue with the deployment. Once the wizard has completed, check for error markers on the web service client project.
Aesthetic inconsistencies present in some wizards when using dark mode
No work-around available
LDT allows a user to select the Dynamic Web Project facet v5.0. This version of the facet uses Jakarta EE9 and LDT does not support Jakarta EE9. An update to WTP has made this available, however LDT does not yet support this.
Jakarta EE9 and Dynamic Web Project facet v5.0 are not supported at this time

 

IBM Liberty Developer Tools v22.2

General known issues

SymptomWorkaround
When importing a Gradle app you can receive " 'Auto share git projects' has encountered a problem. Connecting Git team provider failed. See log for details"
If you are trying to Auto share the project then configure eGit. If you are not then go to Preferences > Version Control (Team) > Git > Projects > and untick "Automatically share projects located in a Git repository"
Unable to start a server on a remote Ubuntu 22.04 system
It is possible to connect to and stop a remote server on Ubuntu 22.04, but it is not possible to start it, as Ubuntu 22.04 no longer supports the SSH host key algorithm used by WDT.
To work around this issue, on the remote machine, edit /etc/ssh/sshd_config and add the following:
  HostKeyAlgorithms +ssh-rsa
  PubkeyAcceptedKeyTypes +ssh-rsa
Then restart sshd service by using:
  sudo systemctl restart sshd
If you have two Liberty runtimes each controlling different remote servers, you could hit java.lang.NullPointerException: Cannot invoke "com.ibm.ws.st.ui.internal.wizard.WebSphereServerParentComposite.getChildren()" because "this.comp" is null
Workaround: controlling multiple remote servers with the same local runtime works.
When using the Docker Tooling perspective to pull an image, you could encounter the following error: org.mandas.docker.client.exceptions.DockerException: java.io.IOException: Cannot run program "docker-credential-desktop": error=2, No such file or directory.
To workaround this issue, go to ~/.docker/config.json and change credsStore to credStore. You can also use docker pull manually to pull down the image you need rather than using the tooling. Issue raised here.
There is no warning provided if you try to use incompatible features in a Liberty server, e.g. servlet-3.0 and servlet-3.1 in server.xml
Remove the incompatible feature
During a Gradle build, you receive java.lang.IllegalArgumentException: Unsupported class file major version 61. Issue raised against Eclipse as they do not ship a Java 17 compatible version of the Gradle Tooling api (issue here).
Set system property GRADLE_VERSION_OVERRIDE and LDT will use that value instead of the one the Gradle plug-in says to use. This only works if code requesting the Gradle version is LDT. If it's a plug-in (e.g. Liberty Gradle plug-in) this workaround won't help.
When creating or importing a project which uses the Liberty Gradle plugin version 3.x, no prompt appears to create a runtime and server for the project.
This can be worked around by manually specifying the location of the server.xml file in the build.Gradle file which is detailed in this issue.
When generating a web service into an OSGi app and completing the wizard, a dialog appears saying that the app hasn't started successfully. At this point, the Liberty server logs report: The application JWS_OSGi_BU.app could not be started as it could not be found at location JWS_OSGi_BU.app.eba.
Clicking "Finish" again deploys the app and the wizard completes successfully.
When creating and deploying a web service client using the Generate Web Service wizard, Eclipse could wrongly report that the generated client has validation errors and might not deploy correctly.
In this case, try clicking OK to continue with the deployment. Once the wizard has completed, check for error markers on the web service client project.
Aesthetic inconsistencies present in some wizards when using dark mode
No work-around available
Due to an update to the WTP plugin, LDT will allow a user to select the Dynamic Web Project facet v5.0. Unfortunately, this version of the facet uses Jakarta EE9, which LDT does not support. This selection will fail to work as expected.
None - Jakarta EE and Dynamic Web Project facet v5.0 are not supported at this time

 

Installing on older versions of Eclipse (not 'latest')

General known issues

SymptomWorkaround
During installation, the following error message may be observed:
An error occurred while collecting items to be installed
session context was:(profile=DefaultProfile, phase=org.eclipse.equinox.internal.p2.engine.phases.Collect, operand=, action=).
Result of processing steps.
OK
OK
OK
Public key not found for 810cecf8ba271008.
OK
Result of processing steps.
OK
OK
OK
Public key not found for 810cecf8ba271008.
OK

This is caused by Eclipse being incorrectly configured to update Eclipse plugins from the 'latest' update site. A manual configuration change is required to point your installed Eclipse to the appropriate update site for its version.

To access this configuration. go to Help -> Install New Software then press the Manage button. You will see a dialog box like this:

image

This screenshot was taken using Eclipse 2023-03 (you may need to expand the dialog box to see the contents better).

Select each of the three selected items (one at a time) , press the Edit button and change the URL so it matches the version of your installed Eclipse.

For example, if your installed Eclipse is version 2023-03, change the top URL from

https://download.eclipse.org/technology/epp/packages/latest/

to

https://download.eclipse.org/technology/epp/packages/2023-03/

This will ensure Eclipse selects the appropriate plugins that match your Eclipse version.

  
 

[{"Type":"MASTER","Line of Business":{"code":"LOB45","label":"Automation"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSHR6W","label":"WebSphere Application Server Developer Tools for Eclipse"},"ARM Category":[{"code":"a8m3p0000008uKoAAI","label":"IBM WebSphere Liberty-All Platforms-\u003ESystem Management-\u003ELiberty Developer Tools LDT"}],"ARM Case Number":"","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"22.2.0;23.1.0;23.2.0;24.1.0;25.1.0;25.2.0"}]

Document Information

Modified date:
25 November 2025

UID

ibm16841611