私は現在、非常にクールなJavaライブラリであるLanternaを見つけたものを使用して、小さな端末アプリケーションを作成しています。Swing と同様の概念を使用して、ncurses のようなアプリケーションを作成できます。
そのアプリケーションの究極の目標はサーバー上で実行することであるため、Vagrant ubuntu ボックスでテストします。残念ながら、起動するたびに次のエラーが発生します。
vagrant@precise64:~/myProject/target$ java -jar myProject-1.1.0-SNAPSHOT.jar -Djava.awt.headless=true
Exception in thread "main" java.lang.UnsatisfiedLinkError: /usr/lib/jvm/jdk1.6.0_37/jre/lib/amd64/xawt/libmawt.so: libXtst.so.6: cannot open shared object file: No such file or directory
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1807)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1703)
at java.lang.Runtime.load0(Runtime.java:770)
at java.lang.System.load(System.java:1003)
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1807)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1724)
at java.lang.Runtime.loadLibrary0(Runtime.java:823)
at java.lang.System.loadLibrary(System.java:1028)
at sun.security.action.LoadLibraryAction.run(LoadLibraryAction.java:50)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.Toolkit.loadLibraries(Toolkit.java:1605)
at java.awt.Toolkit.<clinit>(Toolkit.java:1627)
at java.awt.Font.<clinit>(Font.java:210)
at com.googlecode.lanterna.terminal.swing.TerminalAppearance.createDefaultNormalFont(TerminalAppearance.java:46)
at com.googlecode.lanterna.terminal.swing.TerminalAppearance.<clinit>(TerminalAppearance.java:33)
at com.googlecode.lanterna.terminal.swing.SwingTerminal.<init>(SwingTerminal.java:77)
at com.googlecode.lanterna.TerminalFacade.createSwingTerminal(TerminalFacade.java:115)
at com.googlecode.lanterna.TerminalFacade.createSwingTerminal(TerminalFacade.java:104)
at com.googlecode.lanterna.TerminalFacade.createTerminal(TerminalFacade.java:95)
at com.googlecode.lanterna.TerminalFacade.createTerminal(TerminalFacade.java:65)
at com.googlecode.lanterna.TerminalFacade.createTerminal(TerminalFacade.java:54)
at com.googlecode.lanterna.TerminalFacade.createScreen(TerminalFacade.java:247)
at com.googlecode.lanterna.TerminalFacade.createGUIScreen(TerminalFacade.java:261)
この構成を使用したChef ソロ Javaレシピに由来する、私の Java インストールに問題があると思います。
chef.json = {
:java => {
:install_flavor => "oracle",
:oracle => {
"accept_oracle_download_terms" => true
}
},
:maven => {
:version => '3',
:setup_bin => 'true'
}
}
しかし、どうすれば修正できますか?