如何在Netbeans Platform Maven插件中找到Image的路径

时间:2014-08-28 18:35:17

标签: java maven netbeans netbeans-platform netbeans-plugins

我尝试将插件写入NetBeans IDE。但我找到一些图像的正确路径有问题:

这是我的项目树结构:

enter image description here

测试代码如此剂量显示图标wePagesBadge.gif

        ImageIcon image = new ImageIcon("webPagesBadge.gif");
        JOptionPane.showMessageDialog(null, "Some Messsage","Example",JOptionPane.INFORMATION_MESSAGE,image);

当然,当我将此图像放入我在本地计算机上安装netbeans的根文件夹时,该图标出现在JOptionPane中。这条路是

 C:\Program Files\NetBeans 8.0

其他例子是我不使用Maven Project Type开发插件但Netbeans模块项目类型:

enter image description here

这次图像出现在JOptionPane上。我花了很多时间找到答案,我不知道如何解决它。

2 个答案:

答案 0 :(得分:2)

将资源放在源包

下是一种不好的做法

在src / main / resources下创建一个我的资源名称的文件夹,然后尝试使用

读取它
className.class.getClassLoader().getResource("yourImageFile");

所以这应该做的工作

ImageIcon imageIcon = new ImageIcon(PDFGenerator.class
                                                .getClassLoader()
                                                .getResource("yourIcon.gif"));

答案 1 :(得分:2)

我找到了答案如何解决它。坚持使用如下代码:

    ImageIcon image = new ImageIcon("webPagesBadge.gif");
    JOptionPane.showMessageDialog(null, "Some Messsage","Example",JOptionPane.INFORMATION_MESSAGE,image);

我用

     ImageIcon image = new ImageIcon(ImageUtilities.loadImage("webPagesBadge.gif"));
     JOptionPane.showMessageDialog(null, "Some Messsage","Example",JOptionPane.INFORMATION_MESSAGE,image);

我将图片放入:

enter image description here

我用来加载图片的方法

    ImageUtilities.loadImage("webPagesBadge.gif")

来自org.openide.util.ImageUtilities