Opa.
Coloquei o “jdic.jar” e o “jdic_stub.jar” no classpath e tal e usei este código:
import java.awt.event.*;
import javax.swing.*;
import org.jdesktop.jdic.tray.*;
public class TrayTest {
public static void main(String[] args) {
Icon icon = new ImageIcon("icone.gif");
JPopupMenu menu = new JPopupMenu();
menu.add(new JMenuItem("Test 1"));
menu.addSeparator();
JMenu subMenu = new JMenu("Test 2");
subMenu.add(new JMenuItem("Test 3"));
menu.add(subMenu);
menu.addSeparator();
JMenuItem exit = new JMenuItem("Exit");
exit.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
});
menu.add(exit);
TrayIcon tray = new TrayIcon(icon, "My Caption", menu);
SystemTray.getDefaultSystemTray().addTrayIcon(tray);
}
}
Ai deu este erro:
Exception in thread "main" java.lang.UnsatisfiedLinkError: no tray in java.library.path
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1682)
at java.lang.Runtime.loadLibrary0(Runtime.java:822)
at java.lang.System.loadLibrary(System.java:992)
at org.jdesktop.jdic.tray.internal.impl.DisplayThread.<clinit>(Unknown Source)
at org.jdesktop.jdic.tray.internal.impl.WinSystemTrayService.<clinit>(Unknown Source)
at org.jdesktop.jdic.tray.internal.impl.ServiceManagerStub.getService(Unknown Source)
at org.jdesktop.jdic.tray.internal.ServiceManager.getService(Unknown Source)
at org.jdesktop.jdic.tray.SystemTray.<clinit>(Unknown Source)
at com.ederbaum.test.TrayTest.main(TrayTest.java:46)
Exception in thread "Thread-2" java.lang.UnsatisfiedLinkError: removeIcon
at org.jdesktop.jdic.tray.internal.impl.WinTrayIconService.removeIcon(Native Method)
at org.jdesktop.jdic.tray.internal.impl.WinTrayIconService.removeAllIcons(Unknown Source)
at org.jdesktop.jdic.tray.internal.impl.WinTrayIconService$1.run(Unknown Source)
Java Result: 1
Já sei que o Jdic tah tentando carregar as DLL’s e não as acha. Como faço para ele achar as Dll’s que vem com o pacote? preferencialmente colocando as mesmas junto com as pastas da minha aplicação.