Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/373.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 图像未显示在可执行jar中_Java_Image_Swing_Resources_System Tray - Fatal编程技术网

Java 图像未显示在可执行jar中

Java 图像未显示在可执行jar中,java,image,swing,resources,system-tray,Java,Image,Swing,Resources,System Tray,我已经在eclipse中创建了我的项目的可执行jar文件。但当我执行该文件时,它不会在我在项目中添加的系统托盘上显示图标。我使用下面的简单代码 Image image = Toolkit.getDefaultToolkit().getImage("src/resources/ChatIcon1.jpeg"); PopupMenu Popup = new PopupMenu(); MenuItem exit = new MenuItem("Exit"); Popup.add(exit); fin

我已经在eclipse中创建了我的项目的可执行jar文件。但当我执行该文件时,它不会在我在项目中添加的系统托盘上显示图标。我使用下面的简单代码

Image image = Toolkit.getDefaultToolkit().getImage("src/resources/ChatIcon1.jpeg");
PopupMenu Popup = new PopupMenu();
MenuItem exit = new MenuItem("Exit");
Popup.add(exit);

final TrayIcon trayIcon = new TrayIcon(image,"OfficeCommunicator",Popup);
trayIcon.setImageAutoSize(true);

要从.jar文件中加载资源,请使用getClass().getResource()。将返回具有正确路径的URL

Image img = ImageIO.read(getClass().getResource("path to image"));

谢谢但你们能给出完整的代码行吗?因为我不知道如何在图片上尝试。很高兴我能帮上忙。请把我的回答标为接受。谢谢。如果要在可执行jar外部访问文件,请从URL中删除
src/resources/
,并将
ChatIcon1.jpeg
放在项目的根文件夹中。但是,如果您想将其作为可执行jar资源的一部分,请使用
getClass.getResource()
方法检索。@Vinay:您是否将
源代码
打包到
.jar
文件中?请学习java命名约定并遵守它们