java.lang.NoClassDefFoundError:java.awt.Container

时间:2013-01-02 06:02:11

标签: java awt

我正在尝试为UML安装Visual Paradigm。在安装过程中它崩溃了。这是堆栈跟踪:

Unpacking JRE ...
Preparing JRE ...
Starting Installer ...
java.lang.NoClassDefFoundError: java.awt.Container
    at com.install4j.runtime.installer.frontend.headless.AbstractHeadlessScreenExecutor.init(Unknown Source)
    at com.install4j.runtime.installer.frontend.headless.ConsoleScreenExecutor.<init>(Unknown Source)
    at com.install4j.runtime.installer.frontend.headless.InstallerConsoleScreenExecutor.<init>(Unknown Source)
    at com.install4j.runtime.installer.Installer.getScreenExecutor(Unknown Source)
    at com.install4j.runtime.installer.Installer.runInProcess(Unknown Source)
    at com.install4j.runtime.installer.Installer.main(Unknown Source)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.exe4j.runtime.LauncherEngine.launch(Unknown Source)
    at com.install4j.runtime.launcher.Launcher.main(Unknown Source)
java.lang.NoClassDefFoundError: java.awt.Component
    at javax.swing.ImageIcon.<clinit>(Unknown Source)
    at com.install4j.runtime.installer.frontend.GUIHelper.loadIcon(Unknown Source)
    at com.install4j.runtime.installer.frontend.GUIHelper.<clinit>(Unknown Source)
    at com.install4j.runtime.installer.helper.InstallerUtil.reportException(Unknown Source)
    at com.install4j.runtime.installer.Installer.main(Unknown Source)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.exe4j.runtime.LauncherEngine.launch(Unknown Source)
    at com.install4j.runtime.launcher.Launcher.main(Unknown Source)

安装程序似乎无法在WT库中找到类。我看不出怎么可能。有谁知道造成这种情况的原因,以及我如何解决这个问题?

[系统信息]

java version "1.6.0_24"
OpenJDK Runtime Environment (IcedTea6 1.11.5) (6b24-1.11.5-0ubuntu1~12.04.1)
OpenJDK 64-Bit Server VM (build 20.0-b12, mixed mode)

7 个答案:

答案 0 :(得分:18)

在ubuntu 14.04上,Hayden给出的答案并不适合我,因为套餐不存在。

这确实有效:

apt-get install libxtst6:i386

即。它需要32位版本的libxtst

答案 1 :(得分:7)

我在安装SoapUI软件时遇到同样的问题,这个命令对我有用:

$ ./soapUI-x32-4.6.0.sh -J-Djava.awt.headless=true

我的系统:

$ ./soapUI-x32-4.6.0.sh -J-Djava.awt.headless=true

我的JVM版本:

Linux 3.10-2-amd64 #1 SMP Debian 3.10.7-1 (2013-08-17) x86_64 GNU/Linux

答案 2 :(得分:5)

尝试在Ubuntu 12.10 64位上安装Visual Paradigm时遇到了同样的问题。

Java版:

java version "1.7.0_11"
Java(TM) SE Runtime Environment (build 1.7.0_11-b21)
Java HotSpot(TM) 64-Bit Server VM (build 23.6-b04, mixed mode)

这似乎解决了这个问题:

sudo apt-get install ia32-libs

答案 3 :(得分:3)

使用-J-Djava.awt.headless = true

运行脚本

sh SoapUI-x32-5.0.0.sh -J-Djava.awt.headless = true

答案 4 :(得分:0)

在我看来,这可能是OpenJDK的问题。尝试使用此命令切换到官方Oracle / Sun JDK。

sudo update-java-alternatives -s java-6-sun

答案 5 :(得分:0)

您可以使用

`sudo update-java-alternatives -s java-6-oracle`

而不是使用

`sudo update-java-alternatives -s java-6-sun`

或尝试更改您使用的6 with the version of Java

答案 6 :(得分:0)

在Ubuntu18.04上运行此命令

sudo apt-get update
sudo apt-get install libxi6 libxtst6 libxrender1