Java GDK+: 找不到 Pixbuf 图像

Java GDK+: Pixbuf image not found

org.gnome.gdk.Pixbuf构造函数的文件路径参数相对于哪个目录?我应该把文件放在哪里?

Main.java

public class Main
{
    public static void main( String... args )
    {
        Gtk.init( args );
        new Example();
        Gtk.main();
    }
}

Example.java

public class Example
{
    private Pixbuf icon;

    public Example()
    {
        try {
            icon = new Pixbuf( "images/bolt.png" );
        } catch ( FileNotFoundException e ) {
            e.printStackTrace();
        }
    }
}

它抛出以下异常:

java.io.FileNotFoundException: images/web.png not found

我的目录结构是:

使用this.getClass().getResourceAsStream(/images/bolt.png)得到一个InputStream并使用这个answer将它转换为一个byte[],你可以将它传递给Pixbuf构造函数。

如果您正在使用 Java 9,您还可以在 InputStream 上调用 readAllBytes()