How to Find the JBoss / WildFly Version You Are Running (Updated for WildFly 41)

Identifying the exact version of WildFly or JBoss EAP running in your environment is an essential task for server management, security patching, CI/CD deployment pipelines, and troubleshooting. Whether you have full access to a running instance, only system logs, or a offline server installation, here is the complete guide to discovering your JBoss/WildFly server version using modern CLI, web console, and terminal methods.


1. Method 1: Check Server Startup Logs

If you have access to the application server logs, the fastest way to determine your version is by inspecting the startup output. When WildFly boots, it explicitly logs its full release tag and core engine version in server.log (located under $JBOSS_HOME/standalone/log/).

For example, booting WildFly 41 produces an output similar to this:

2026-08-01 10:15:32,410 INFO  [org.jboss.as] (Controller Boot Thread) WFLYSRV0025: WildFly 41.0.0.Final (WildFly Core 32.0.1.Final) started in 3120ms - Started 345 of 560 services
Offline Inspection Tip: If the server isn't running, you can inspect the core module JAR filenames inside the installation directory to quickly identify the version:
find modules/ -name "*wildfly-*.jar"

2. Method 2: Use the Command Line Interface (JBoss CLI)

For live servers, the JBoss CLI is the most accurate tool to query runtime metadata programmatically or interactively.

Using the product-info Command

Connect to your running server via jboss-cli.sh (or jboss-cli.bat on Windows):

$ ./bin/jboss-cli.sh --connect
[standalone@localhost:9990 /] product-info

This command returns structured JSON containing both product name and version details:

{
    "outcome" => "success",
    "result" => [{
        "summary" => {
            "host-name" => "app-server-01",
            "product-name" => "WildFly Full",
            "product-version" => "40.0.0.Final",
            "product-community-identifier" => "Product"
        }
    }]
}

Reading the product-version Attribute

If you are writing automation scripts (Bash, Ansible, Python) and need only the raw version string, execute read-attribute directly from the CLI root node:

[standalone@localhost:9990 /] :read-attribute(name=product-version)
{
    "outcome" => "success",
    "result" => "40.0.0.Final"
}

3. Method 3: Run Standalone or Domain Script with --version

You don't need to boot the entire application server instance to check its version. The startup scripts located in $JBOSS_HOME/bin/ support the --version flag (or -v).

Execute the following command in your terminal:

$ ./bin/standalone.sh --version
=========================================================================

  JBoss Bootstrap Environment

  JBOSS_HOME: /opt/wildfly-41.0.0.Final
  JAVA: java

=========================================================================

WildFly Full 40.0.0.Final (WildFly Core 32.0.1.Final)

4. Method 4: Check via HAL Web Management Console

If you prefer a graphical interface, navigate to the HAL Management Console at:

http://localhost:9990/console/

find wildfly version

Once authenticated, navigate to the Runtime or Server Overview tab. Under the server details panel, you will find:

  • Product Name: WildFly Full / JBoss EAP
  • Product Version: e.g., 41.0.0.Final or EAP 8.x
  • Management Version: Core management subsystem version.

5. Method 5: Legacy JBoss AS (4.x to 6.x) & Jar Manifest Inspection

If you are maintaining legacy JBoss installations (such as JBoss AS 4.x, 5.x, or 6.x), modern CLI options won't be available.

Inspecting MANIFEST.MF

Extract the implementation details directly from the core system JAR:

unzip -p $JBOSS_HOME/lib/jboss-system.jar META-INF/MANIFEST.MF | grep Implementation-Version

Using JMX Console (Legacy JBoss 4.x - 6.x)

Open http://localhost:8080/jmx-console/, locate the domain jboss.system, click on type=Server, and look up the VersionNumber attribute.


6. Troubleshooting & Common Issues

Symptom / Error Root Cause Solution
Failed to connect to the controller Management interface (port 9990) is offline or bound to a different IP. Use ./standalone.sh --version offline or pass --controller=HOST:PORT to jboss-cli.sh.
Authentication required CLI management credentials are missing. Add a management user via ./bin/add-user.sh or use local admin authentication (running script under server OS user).
product-version returns null Running older WildFly / JBoss AS releases. Fallback to :read-attribute(name=release-version) or inspect standalone.sh --version.

7. Frequently Asked Questions (FAQ)

How can I check the WildFly version programmatically inside a Java application?

In Java, you can read the WildFly server version at runtime by querying the system property System.getProperty("jboss.as.release.version") or inspecting the package specification version of WildFly server classes.

What is the difference between WildFly Version and WildFly Core Version?

WildFly Version (e.g., 41.0.0.Final) represents the full application server distribution including Jakarta EE subsystems, messaging, and web services. WildFly Core Version refers strictly to the underlying kernel and management layer that boots the server.

Where is the server version stored in configuration files?

WildFly does not hardcode its product version inside standalone.xml or domain.xml. The version is determined by the installed system modules in $JBOSS_HOME/modules/system/layers/base/ and the server bootstrap JARs.


Conclusion

Determining your JBoss/WildFly server version is straightforward once you know which tool fits your current environment. For running production instances, jboss-cli.sh and startup logs offer immediate answers, while the --version script flag handles offline inspection effortlessly. Keep your WildFly installations up to date with the latest security releases!


Recommended Articles

Discover Where JBoss EAP/WildFly Logs Are Located: Standalone vs Domain Mode

Learn where to find and view logs in JBoss EAP/WildFly, whether running in standalone or domain mode.

WildFly Modules Slot Installation Guide: Managing Multiple Versions of a Module

Learn how to install multiple versions of a module in WildFly using slots for better management and flexibility.

Inspection and Management of WildFly Logs via Command Line Interface - A Comprehensive Guide

Learn how to inspect WildFly logs using CLI with detailed examples and parameters for efficient log management.

Discovering Default JBoss Password in WildFly Application Server

Learn about the default JBoss password available in WildFly installation. Discover how to add a user and enable the admin user.