리눅스에서 JDIC를 이용해 TrayIcon을 쓰려합니다
환경은 Fedora 8 을 쓰고있습니다.
일단 http://jdic.dev.java.net/files/documents/880/6814/tray-0.1.6-bin-linux.zip
을 다운받아서 압축을 풀고 tray.jar파일을 $JAVA_HOME/lib/ext 에 넣어
놓았구요 이클립스에서도 Add 해논 상태입니다.
테스트 소스는 간략하게 다음과 같구요
package SysTrayTest;
import org.jdesktop.jdic.tray.*;
import java.awt.event.*;
import javax.swing.*;
public class CSysTrayTest {
public static JMenuItem quit;
public CSysTrayTest(){
JPopupMenu menu = new JPopupMenu("My Menu");
menu.add(new JMenuItem("Test1"));
menu.add(new JMenuItem("Test2"));
quit = new JMenuItem("Quit");
quit.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
System.exit(0);
}
});
menu.add(quit);
ImageIcon icon = new ImageIcon("duke.xpm");
TrayIcon tray_icon = new TrayIcon(icon, "System Tray Test!", menu);
SystemTray tray = SystemTray.getDefaultSystemTray();
tray.addTrayIcon(tray_icon);
}
public static void main(String[] args) {
// TODO Auto-generated method stub
new CSysTrayTest();
}
}
=========================================
에러는 하나도 없구요 런타임 해보면
java: xcb_xlib.c:50: xcb_xlib_unlock: Assertion `c->xlib.lock' failed.
위와 같은 메세지가 나오는데 무엇을 뜻하는지 잘 모르겠습니다.
윈도우에서만 되고 리눅스에서 안되는걸 제가 쓴게 있으면 좀 알려주세요.
그리고 폴더에 libtray.so라는 파일이 있는데 이걸 어떻게
해줘야 한다고는 들었는데 자세한 방법을 알려주는 곳은 없네요.
정말 세세하게 알려주시면 감사하겠습니다.
댓글 달기