The TSCO or TSCO Gateway Server/Agent installation fails with error, "java.lang.NoClassDefFoundError: Could not initialize class java.awt.Toolkit" when there isn't a valid DISPLAY

Version 2
    Share This:

    This document contains official content from the BMC Software Knowledge Base. It is automatically updated when the knowledge article is modified.


    TrueSight Capacity Optimization


    TrueSight Capacity Optimization 11.3.01, 11.0, 10.7, 10.5, 10.3, 10.0; BMC Performance Assurance 9.5



    The TrueSight Capacity Optimization (TSCO), TSCO Gateway Server, and TSCO Agent installation uses an installation program that requires an X-Windows display to be created.  What are some steps that are required to allow the installation GUI to display?


    Although the DISPLAY variable is set when the BCO installer is executed the GUI fails with the following error: 


       $ ./


    Running with DISPLAY environment variable set to:



    Listening for transport dt_socket at address: 12333


    May 16, 2012 10:23:06 AM com.bmc.install.product.base.project.runner.ProjectRunner


    SEVERE: THROWABLE EVENT {Description=[Error]}


    java.lang.NoClassDefFoundError: Could not initialize class java.awt.Toolkit


    at java.awt.Font.<clinit>(Unknown Source)
    at com.bmc.install.product.base.project.runner.ProjectRunner.getChoosableLocales(
    at com.bmc.install.product.base.project.runner.ProjectRunner.initializeProjectUI(
    at com.bmc.install.product.base.project.runner.ProjectRunner.runProjectRunner(
    at com.bmc.install.product.base.project.runner.ProjectRunner.main(





    There are several different problems that can generate the "java.lang.NoClassDefFoundError: Could not initialize class java.awt.Toolkit" error when trying to install BCO via the installation utility.


    Section I: Missing X-Windows server library packages


    The TrueSight Capacity Optimization (TSCO) installation utility requires the following packages to be installed on the TSCO Application Server, ETL Engine Server, TSCO Gateway Server, or TSCO Agent machine where the product is to be installed in order to instantiate the TSCO installation GUI:

    • libXi
    • libX11
    • libXau
    • libXdmcp
    • libXext
    • libXcursor
    • libXrender
    • libXfixes
    • libXtst

    on RHEL, you can validate if these packages are installed via the following command:


        rpm -qa | grep [package]


    Where [package] is the target package name.


    The following command will install all of the required packages on a machine entitled to download packages from Red Hat's update site:


    sudo yum install libXi libX11 libXau libXdmcp libXext libXcursor libXrender libXfixes libXtst


    Section II: A valid DISPLAY variable must be set


    Check the DISPLAY variable set within the terminal window where the TSCO Installation is being executed:


    echo $DISPLAY


    The DISPLAY variable needs to be set to the hostname and display number of a server running a valid X-Windows display server.  Examples of machines that are able to access an X-Windows display request are:

    • A Linux desktop session
    • A Mac where the appropriate X-server installation has been done
    • A Windows machine running a 3rd party X-Windows server such as eXceed, X-MING, or Cygwin, or other purchased or free X-Windows server software

    Section III: Using 'ssh X-forwarding' to send the DISPLAY through a firewall


    To use ssh X-Windows forwarding you must have some additional OS packages installed on the machine.


    sudo yum install xorg-x11-xauth


    This package will install the libXmu and libXt as dependencies.


    If you are connecting from a Linux or Mac display host, you can use the ssh '-X' flag to enable X-fowarding:


       ssh -X cpit@BCOAS


    After successfully logging in via ssh with X-forwarding your DISPLAY variable should be automatically set to something like localhost:##.  For example:




    If in order to do the BCO installation you must then 'su' to another user this X-display won't allow the TSCO installation GUI to connect (it will fail with an 'X11 connection rejected because of wrong authentication" error).  In that case you'll need to import your MIT magic cookie from the original user that established the DISPLAY into your 'su' session.


    To do that:


      (1) As the original login user run 'xauth list' to get the auth entry for the original user (associated with the ssh X-Windows tunnel)
      (2) Run 'xauth add [entry]' as the 'cpit' user to add that authorization to the xauth file for the cpit user.

    This web page describes how to do that:



    Section IV: Other X-Windows authentication problems

    Check the error messaging being generated when the X-Windows display fails carefully as there is often a short one line error message towards the top that is the direct cause of the problem but that then triggers a large block of more generic error messages beyond that point. 

    For example, the error "MobaXterm X11 proxy: Unsupported authorisation protocol"  being reported can indicate a problem with the X-Windows token.  In one environment this was due to the $HOME directory not existing for the TSCO Installation Owner (and thus the $HOME/.Xauthority file couldn't be created which contains the token). 

    Related Products:  
    1. TrueSight Capacity Optimization
    3. TrueSight Capacity Optimization (Gateway Server)
    5. TrueSight Capacity Optimization (Agent)
    7. BMC Capacity Optimization
    9. BMC Capacity Management
       Legacy ID:KA370797


    Article Number:


    Article Type:

    Solutions to a Product Problem

      Looking for additional information?    Search BMC Support  or  Browse Knowledge Articles