デプロイされたアプリケーションで Java awt ロボットを使用しようとしましたが、最初はヘッドレス プロパティを変更すると考えられるヘッドレス例外が発生しましたが、それでも問題は存在します
try {
Field defaultHeadlessField = java.awt.GraphicsEnvironment.class.getDeclaredField("defaultHeadless");
defaultHeadlessField.setAccessible(true);
defaultHeadlessField.set(null,Boolean.FALSE);
Field headlessField = java.awt.GraphicsEnvironment.class.getDeclaredField("headless");
headlessField.setAccessible(true);
headlessField.set(null,Boolean.FALSE);
System.out.print(GraphicsEnvironment.isHeadless());
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (NoSuchFieldException e) {
e.printStackTrace();
}
try {
Robot robot = new Robot();
しかし今は言う
java.awt.HeadlessException
at sun.java2d.HeadlessGraphicsEnvironment.getDefaultScreenDevice(HeadlessGraphicsEnvironment.java:64)
基本的な使用例は、ブラウザ ウィンドウで keypress(0) をシミュレートすることです。この問題を解決するには助けが必要です。