如何在java桌面应用程序中实现,系统通知

时间:2015-10-16 10:50:09

标签: java notifications

我想在我的Java桌面应用程序中构建一个简单的系统通知。所以,经过网上搜索后,我找到了JCarrierPigeon库来做到这一点。

所以在插入两个库之后我有了这段代码:

package prove;

import javax.swing.JFrame;

import net.sf.jcarrierpigeon.Notification;
import net.sf.jcarrierpigeon.NotificationQueue;
import net.sf.jcarrierpigeon.WindowPosition;

public class NOtification {

    public static void main(String[] args){
        NotificationQueue queue = new NotificationQueue();



            JFrame window1 = new JFrame();

            Notification note1 = new Notification(window1, WindowPosition.BOTTOMRIGHT, 25, 25, 1000);

            queue.add(note1);
    }
}

但是,如果我尝试运行它,我有这个错误:

Exception in thread "main" java.lang.NoClassDefFoundError: org/jdesktop/animation/timing/TimingTarget
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
    at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
    at prove.NOtification.main(NOtification.java:18)
Caused by: java.lang.ClassNotFoundException: org.jdesktop.animation.timing.TimingTarget
    at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
    ... 13 more

我该如何解决?

1 个答案:

答案 0 :(得分:0)

Homepage of JCarrierPidgeon州:

  

"首先,确保在类路径中包含Timing Framework库。"

错误消息看起来像你没有这样做。

主页还提供了该库的链接。我不会在这里做,因为它可能会变得过时。