私のアプリケーションは JRE-6 64 ビットで実行されています。以下を使用して Java の支援技術を有効にします。
assistive_technologies=com.sun.java.accessibility.AccessBridge
ただし、JavaAccessBridge-64.dll、JAWTAccessBridge-64.dll、および WindowsAccessBridge-64.dll のファイルは JRE 6 パスに存在しません。
「java.library.path」パスをカスタマイズしようとしています。Java アクセス ブリッジをダウンロードし、「java.library.path」にフォルダ パスを追加します。
以下のコードを書きます。
static Toolkit tk ;
static long eventMask = AWTEvent.MOUSE_MOTION_EVENT_MASK + AWTEvent.MOUSE_EVENT_MASK + AWTEvent.KEY_EVENT_MASK;
public static void main(String[] args)
{
try {
String te= "D:\\AccessBridge" + File.pathSeparator + System.getProperty("java.library.path");
System.setProperty("java.library.path",te);
String library =System.getProperty("java.library.path");
tk = Toolkit.getDefaultToolkit();
} catch (Exception e1) {
e1.printStackTrace();
}
tk.addAWTEventListener(new AWTEventListener()
{
@Override
public void eventDispatched(AWTEvent e)
{
System.out.println(e.getID() + ", " + e);
}
}, eventMask);
}
以下の例外が見つかりました。
スレッド「メイン」の例外 java.awt.AWTError: 支援技術が見つかりません: java.awt.Toolkit.loadAssistiveTechnologies(Toolkit.java:773) の com.sun.java.accessibility.AccessBridge (java.awt.Toolkit.getDefaultToolkit() Toolkit.java:872) の Automation.MyToolKit.main(MyToolKit.java:73)
この dll を JRE フォルダーにコピーするのではなく、別の場所からロードすることは可能ですか?