razear Asked:2020-05-08 13:57:07 +0800 CST2020-05-08 13:57:07 +0800 CST 2020-05-08 13:57:07 +0800 CST jar文件中的图片 772 如何正确地将图像添加到 java.lang. 调试的时候有图片显示,但是jar中构建项目后,没有图片。 systemTray = SystemTray.getSystemTray(); Image image = Toolkit.getDefaultToolkit().getImage("src\\images\\logo-main2.png"); TrayIcon trayIcon = new TrayIcon(image , "GrindFM", popupMenu); trayIcon.setImageAutoSize(true); systemTray.add(trayIcon); java 1 个回答 Voted Best Answer Vyacheslav Gusser 2020-05-08T14:49:46+08:002020-05-08T14:49:46+08:00 问题是您正在从磁盘加载资源,而不是 jar。当您在开发环境中工作时,您可以启动 jar,从中可以浏览磁盘上的文件夹并访问此图片。当您在另一台 PC 上运行它时,此文件夹分别不存在。您需要使用资源加载 from classpath,为此更改代码如下 systemTray = SystemTray.getSystemTray(); URL resource = getClass().getResource("images/logo-main2.png"); Image image = Toolkit.getDefaultToolkit().getImage(resource); TrayIcon trayIcon = new TrayIcon(image , "GrindFM", popupMenu); trayIcon.setImageAutoSize(true); systemTray.add(trayIcon); 一切都必须工作
问题是您正在从磁盘加载资源,而不是 jar。当您在开发环境中工作时,您可以启动 jar,从中可以浏览磁盘上的文件夹并访问此图片。当您在另一台 PC 上运行它时,此文件夹分别不存在。您需要使用资源加载 from
classpath
,为此更改代码如下一切都必须工作