私のUnixシステムにX11サーバやGUIモードがない場合、コンソールモードに戻ってしまうインストーラがあります。コンソールの実行が有効になっている場合、私は[installer] -c
コマンドを使用してインストーラを実行していない場合でもInstall4j:CentOS 7 Serverでインストーラを実行すると例外が発生しない
代替オプションによると、それは自動的に(それを実行する必要があります。以下は、私はインストーラのために設定されている構成ですまた、通常の使用例でなければなりません)。しかし、残念ながら、私がコンソールモードで直接インストーラを実行すると、例外がスローされます。例外ログは次のとおりです。
java.lang.NoClassDefFoundError: java.awt.Container
at com.install4j.runtime.installer.frontend.headless.AbstractHeadlessScreenExecutor.init(AbstractHeadlessScreenExecutor.java:67)
at com.install4j.runtime.installer.frontend.headless.ConsoleScreenExecutor.<init>(ConsoleScreenExecutor.java:24)
at com.install4j.runtime.installer.frontend.headless.InstallerConsoleScreenExecutor.<init>(InstallerConsoleScreenExecutor.java:6)
at com.install4j.runtime.installer.Installer.getScreenExecutor(Installer.java:88)
at com.install4j.runtime.installer.Installer.runInProcess(Installer.java:57)
at com.install4j.runtime.installer.Installer.main(Installer.java:45)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.exe4j.runtime.LauncherEngine.launch(LauncherEngine.java:81)
at com.install4j.runtime.launcher.UnixLauncher.main(UnixLauncher.java:62)
Install4j 6.1.4で試した後、7.0.3でアップグレードしましたが、動作は同じです。私のLinuxインストールはCentOS 7 Serverで、インストーラにはJava JRE 1.7.80がバンドルされています。
私のCentOSにはinstall4jに必要なものがありますか?あるいは、インストーラで何か他のものを設定して、正しく機能させる必要がありますか? -c
で試してみましたが、その場合は動作します。
あなたがAWTクラス –
を持っている。しかし、私は '-c'コマンドを使用してインストーラを起動したときにそれが実行しないヘッドレスJREで実行しようとしているようです。コンソールモードで手動で実行すると、AWTクラスは必要ありませんか? – ShaDooW