- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我遇到了一个我理解的问题,但我不知道如何解决它。我的项目中有一个类,其中包含带有图像或声音的静态字段,这样我就可以在任何地方使用它们,而无需每次都重新创建变量。供引用的字段之一(它们都是相同的):
public static ImageIcon mainMenuBg = new ImageIcon(Resources.class.getResource("img/menubg.png"));
现在我的问题是,当我运行它时,它在 Eclipse 中工作正常,但是当我将项目导出到可运行的 JAR 时,没有任何反应。然后我进入命令窗口并从那里运行它,由于我的图像,我遇到了 ExceptionInInitializerError 。基本上,运行时没有识别任何图像,因此如果我删除每个图像调用,它就可以工作。
此外,值得注意的是,导出时,Main
类列表并未真正更新。如果我更改项目的主要名称,它不会添加到列表中。这可能是我的主要类(class)的问题吗?如果是这样,我该如何解决这个问题?我已经尝试重新创建它,但没有任何改变。有人可以告诉我这个问题吗?
这是打印堆栈跟踪:
Exception in thread "AWT-EventQueue-0" java.lang.ExceptionInInitializerError
at Client.<init>(Client.java:53)
at Client$1.run(Client.java:37)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$400(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Caused by: java.lang.NullPointerException
at javax.swing.ImageIcon.<init>(Unknown Source)
at Ressources.<clinit>(Ressources.java:41)
... 16 more
所指向的行是我尝试从资源类加载图像的行。
此外,我的所有类都位于同一个包中,即默认包中。
最后,这是“jar tvf ...”命令的结果:
153 Tue Jan 13 21:43:36 CET 2015 META-INF/MANIFEST.MF
0 Tue Jan 13 21:43:36 CET 2015 org/
0 Tue Jan 13 21:43:36 CET 2015 org/eclipse/
0 Tue Jan 13 21:43:36 CET 2015 org/eclipse/jdt/
0 Tue Jan 13 21:43:36 CET 2015 org/eclipse/jdt/internal/
0 Tue Jan 13 21:43:36 CET 2015 org/eclipse/jdt/internal/jarinjarloader/
978 Tue Jan 13 21:43:36 CET 2015 org/eclipse/jdt/internal/jarinjarloader/JIJC
onstants.class
714 Tue Jan 13 21:43:36 CET 2015 org/eclipse/jdt/internal/jarinjarloader/JarR
srcLoader$ManifestInfo.class
4735 Tue Jan 13 21:43:36 CET 2015 org/eclipse/jdt/internal/jarinjarloader/JarR
srcLoader.class
1505 Tue Jan 13 21:43:36 CET 2015 org/eclipse/jdt/internal/jarinjarloader/Rsrc
URLConnection.class
1841 Tue Jan 13 21:43:36 CET 2015 org/eclipse/jdt/internal/jarinjarloader/Rsrc
URLStreamHandler.class
1149 Tue Jan 13 21:43:36 CET 2015 org/eclipse/jdt/internal/jarinjarloader/Rsrc
URLStreamHandlerFactory.class
1495 Tue Jan 13 21:43:06 CET 2015 ChatPrive$1.class
1792 Tue Jan 13 21:43:06 CET 2015 ChatPrive$2.class
1596 Tue Jan 13 21:43:06 CET 2015 ChatPrive$3.class
1897 Tue Jan 13 21:43:06 CET 2015 ChatPrive$4.class
1553 Tue Jan 13 21:43:06 CET 2015 ChatPrive$5.class
7565 Tue Jan 13 21:43:06 CET 2015 ChatPrive.class
2680 Tue Jan 13 21:43:06 CET 2015 Tour.class
9003 Tue Jan 13 21:43:06 CET 2015 Move.class
2622 Tue Jan 13 21:43:06 CET 2015 InfosPartie.class
1448 Tue Jan 13 21:43:06 CET 2015 Message.class
3262 Tue Jan 13 21:43:06 CET 2015 Roi.class
1464 Tue Jan 13 21:43:06 CET 2015 Case.class
987 Tue Jan 13 21:43:06 CET 2015 JoueurIA.class
750 Tue Jan 13 21:43:06 CET 2015 MenuCopie$1.class
1307 Tue Jan 13 21:43:06 CET 2015 MenuCopie$2.class
2992 Tue Jan 13 21:43:06 CET 2015 MenuCopie.class
7882 Tue Jan 13 21:43:06 CET 2015 ReceptionClient.class
1138 Tue Jan 13 21:43:06 CET 2015 Chat$1.class
851 Tue Jan 13 21:43:06 CET 2015 Chat$2.class
3835 Tue Jan 13 21:43:06 CET 2015 Chat.class
2263 Tue Jan 13 21:43:06 CET 2015 Fou.class
832 Tue Jan 13 21:43:06 CET 2015 MenuPromotion$1.class
2081 Tue Jan 13 21:43:06 CET 2015 MenuPromotion$2.class
1401 Tue Jan 13 21:43:06 CET 2015 MenuPromotion$3.class
1216 Tue Jan 13 21:43:06 CET 2015 MenuPromotion$4.class
1216 Tue Jan 13 21:43:06 CET 2015 MenuPromotion$5.class
1216 Tue Jan 13 21:43:06 CET 2015 MenuPromotion$6.class
4231 Tue Jan 13 21:43:06 CET 2015 MenuPromotion.class
1501 Tue Jan 13 21:43:06 CET 2015 Jeu$1.class
825 Tue Jan 13 21:43:06 CET 2015 Jeu$2.class
10677 Tue Jan 13 21:43:06 CET 2015 Jeu.class
1457 Tue Jan 13 21:43:06 CET 2015 ChatAll$1.class
1570 Tue Jan 13 21:43:06 CET 2015 ChatAll$2.class
1344 Tue Jan 13 21:43:06 CET 2015 ChatAll$3.class
1914 Tue Jan 13 21:43:06 CET 2015 ChatAll$4.class
1527 Tue Jan 13 21:43:06 CET 2015 ChatAll$5.class
9326 Tue Jan 13 21:43:06 CET 2015 ChatAll.class
1135 Tue Jan 13 21:43:06 CET 2015 PanelInfo$1.class
1337 Tue Jan 13 21:43:06 CET 2015 PanelInfo$10.class
1164 Tue Jan 13 21:43:06 CET 2015 PanelInfo$11.class
963 Tue Jan 13 21:43:06 CET 2015 PanelInfo$12.class
1335 Tue Jan 13 21:43:06 CET 2015 PanelInfo$13.class
963 Tue Jan 13 21:43:06 CET 2015 PanelInfo$14.class
830 Tue Jan 13 21:43:06 CET 2015 PanelInfo$15.class
829 Tue Jan 13 21:43:06 CET 2015 PanelInfo$16.class
1435 Tue Jan 13 21:43:06 CET 2015 PanelInfo$2.class
576 Tue Jan 13 21:43:06 CET 2015 PanelInfo$3.class
1748 Tue Jan 13 21:43:06 CET 2015 PanelInfo$4.class
1356 Tue Jan 13 21:43:06 CET 2015 PanelInfo$5.class
1552 Tue Jan 13 21:43:06 CET 2015 PanelInfo$6.class
1556 Tue Jan 13 21:43:06 CET 2015 PanelInfo$7.class
945 Tue Jan 13 21:43:06 CET 2015 PanelInfo$8.class
1437 Tue Jan 13 21:43:06 CET 2015 PanelInfo$9.class
16765 Tue Jan 13 21:43:06 CET 2015 PanelInfo.class
1176 Tue Jan 13 21:43:06 CET 2015 MenuUtilisateurs$1.class
1173 Tue Jan 13 21:43:06 CET 2015 MenuUtilisateurs$2.class
1753 Tue Jan 13 21:43:06 CET 2015 MenuUtilisateurs$3.class
2228 Tue Jan 13 21:43:06 CET 2015 MenuUtilisateurs$4.class
2071 Tue Jan 13 21:43:06 CET 2015 MenuUtilisateurs.class
3996 Tue Jan 13 21:43:06 CET 2015 Piece.class
3830 Tue Jan 13 21:43:06 CET 2015 PartieSolo.class
3300 Tue Jan 13 21:43:06 CET 2015 ConnexionClient.class
1160 Tue Jan 13 21:43:06 CET 2015 EchecGUI$1.class
8154 Tue Jan 13 21:43:06 CET 2015 EchecGUI.class
6844 Tue Jan 13 21:43:06 CET 2015 Joueur.class
677 Tue Jan 13 21:43:06 CET 2015 Client$1.class
834 Tue Jan 13 21:43:06 CET 2015 Client$2.class
2718 Tue Jan 13 21:43:06 CET 2015 Client$3.class
1041 Tue Jan 13 21:43:06 CET 2015 Client$4.class
1008 Tue Jan 13 21:43:06 CET 2015 Client$5.class
983 Tue Jan 13 21:43:06 CET 2015 Client$6.class
1096 Tue Jan 13 21:43:06 CET 2015 Client$7.class
4611 Tue Jan 13 21:43:06 CET 2015 Client.class
2783 Tue Jan 13 21:43:06 CET 2015 Pion.class
663 Tue Jan 13 21:43:06 CET 2015 JoueurReel.class
1620 Tue Jan 13 21:43:06 CET 2015 MessagePrive.class
6302 Tue Jan 13 21:43:06 CET 2015 PartieEnLigne.class
1911 Tue Jan 13 21:43:06 CET 2015 Cheval.class
6817 Tue Jan 13 21:43:06 CET 2015 Ressources.class
1235 Tue Jan 13 21:43:06 CET 2015 NotificationMessage$1.class
1348 Tue Jan 13 21:43:06 CET 2015 NotificationMessage.class
3835 Tue Jan 13 21:43:06 CET 2015 PartieAmi.class
1355 Tue Jan 13 21:43:06 CET 2015 EmissionClient.class
2999 Tue Jan 13 21:43:06 CET 2015 Reine.class
0 Tue Jan 13 20:55:48 CET 2015 img/
945 Sun Jan 11 19:40:24 CET 2015 img/attaque.png
196863 Fri Jan 09 22:59:04 CET 2015 img/board.png
595046 Sun Jan 11 22:04:40 CET 2015 img/board1.png
631303 Sat Jan 10 00:14:04 CET 2015 img/board2.png
440 Sun Jan 11 22:32:28 CET 2015 img/boutonchat.png
413 Sun Jan 11 22:32:46 CET 2015 img/boutonchatsel.png
735 Sun Jan 11 21:53:46 CET 2015 img/boutonrecommencer.png
793 Sun Jan 11 21:54:52 CET 2015 img/boutonrecommencersel.png
258 Wed Dec 24 17:28:54 CET 2014 img/caseCible.png
224 Sat Jan 10 18:23:04 CET 2015 img/casePleinePoss.png
1100 Sat Jan 10 18:14:06 CET 2015 img/caseSelectionnee.png
224 Sat Jan 10 18:14:30 CET 2015 img/caseVidePoss.png
5962 Wed Dec 24 17:28:54 CET 2014 img/chevalblanc.png
1203 Mon Jan 12 21:37:44 CET 2015 img/chevalblancmort.png
1106 Sun Jan 11 00:40:14 CET 2015 img/chevalblancpromo.png
5720 Wed Dec 24 17:28:54 CET 2014 img/chevalnoir.png
1214 Mon Jan 12 21:37:44 CET 2015 img/chevalnoirmort.png
1119 Sun Jan 11 00:40:50 CET 2015 img/chevalnoirpromo.png
8080 Mon Jan 12 20:44:20 CET 2015 img/echec.png
29956 Mon Jan 12 00:08:06 CET 2015 img/ecranpause.png
3736 Thu Jan 08 00:14:42 CET 2015 img/fondlabel.png
5783 Sun Jan 11 19:04:14 CET 2015 img/fondlabelblanc.png
6968 Sun Jan 11 19:04:18 CET 2015 img/fondlabelnoir.png
5327 Sun Jan 11 22:22:52 CET 2015 img/footer.png
4087 Wed Dec 24 17:28:54 CET 2014 img/foublanc.png
1024 Mon Jan 12 21:37:46 CET 2015 img/foublancmort.png
887 Sun Jan 11 00:43:04 CET 2015 img/foublancpromo.png
3987 Wed Dec 24 17:28:54 CET 2014 img/founoir.png
1010 Mon Jan 12 21:37:48 CET 2015 img/founoirmort.png
864 Sun Jan 11 00:43:24 CET 2015 img/founoirpromo.png
10904 Sun Jan 11 01:19:48 CET 2015 img/historique.png
260917 Tue Jan 13 20:55:48 CET 2015 img/menubg.png
127477 Tue Jan 13 19:30:36 CET 2015 img/panelinfobg.png
270 Sun Jan 11 22:13:34 CET 2015 img/pause.png
256 Sun Jan 11 22:13:48 CET 2015 img/pausesel.png
3817 Mon Jan 12 01:41:14 CET 2015 img/pionblanc.png
979 Mon Jan 12 21:37:50 CET 2015 img/pionblancmort.png
3813 Thu Jan 08 00:39:10 CET 2015 img/pionnoir.png
992 Mon Jan 12 21:37:42 CET 2015 img/pionnoirmort.png
379 Sun Jan 11 23:00:42 CET 2015 img/play.png
377 Sun Jan 11 23:00:28 CET 2015 img/playsel.png
37986 Mon Jan 12 01:17:54 CET 2015 img/promobg.png
449 Sun Jan 11 22:58:14 CET 2015 img/redo.png
439 Sun Jan 11 22:58:32 CET 2015 img/redosel.png
5292 Wed Dec 24 17:28:54 CET 2014 img/reineblanc.png
1245 Mon Jan 12 21:37:54 CET 2015 img/reineblancmort.png
1140 Sun Jan 11 00:41:18 CET 2015 img/reineblancpromo.png
5185 Wed Dec 24 17:28:54 CET 2014 img/reinenoir.png
1222 Mon Jan 12 22:24:28 CET 2015 img/reinenoirmort.png
1115 Sun Jan 11 00:41:40 CET 2015 img/reinenoirpromo.png
5809 Mon Jan 12 00:11:32 CET 2015 img/reprendreBtn.png
4946 Mon Jan 12 00:12:56 CET 2015 img/reprendreBtnsel.png
5889 Wed Dec 24 17:28:54 CET 2014 img/roiblanc.png
5717 Wed Dec 24 17:28:54 CET 2014 img/roinoir.png
2152 Sun Jan 11 00:57:20 CET 2015 img/roque.png
2144 Sun Jan 11 19:26:50 CET 2015 img/roqueblanc.png
2099 Sun Jan 11 19:26:16 CET 2015 img/roquenoir.png
529 Mon Jan 12 21:58:58 CET 2015 img/sonoff.png
503 Mon Jan 12 21:59:24 CET 2015 img/sonoffsel.png
686 Mon Jan 12 21:59:36 CET 2015 img/sonon.png
623 Mon Jan 12 21:59:52 CET 2015 img/sononsel.png
395 Sun Jan 11 22:43:30 CET 2015 img/surrender.png
357 Sun Jan 11 22:43:46 CET 2015 img/surrendersel.png
849 Mon Jan 12 19:40:22 CET 2015 img/tooltip.png
4564 Wed Dec 24 17:28:54 CET 2014 img/tourblanc.png
1146 Mon Jan 12 21:38:00 CET 2015 img/tourblancmort.png
1008 Sun Jan 11 00:42:16 CET 2015 img/tourblancpromo.png
4528 Wed Dec 24 17:28:54 CET 2014 img/tournoir.png
1135 Mon Jan 12 21:38:04 CET 2015 img/tournoirmort.png
986 Sun Jan 11 00:42:42 CET 2015 img/tournoirpromo.png
453 Sun Jan 11 22:57:06 CET 2015 img/undo.png
441 Sun Jan 11 22:56:48 CET 2015 img/undosel.png
1326 Mon Jan 12 01:13:52 CET 2015 img/valider.png
1393 Mon Jan 12 01:19:40 CET 2015 img/validersel.png
0 Tue Jan 13 18:50:36 CET 2015 snd/
2248748 Mon Jan 12 23:35:38 CET 2015 snd/ambiancefeu.wav
77868 Mon Jan 12 23:32:06 CET 2015 snd/attaque.wav
25988 Tue Jan 13 00:08:06 CET 2015 snd/boutonclic.wav
397356 Mon Jan 12 21:02:50 CET 2015 snd/echec.wav
43342 Sun Jan 11 23:59:36 CET 2015 snd/hover.wav
319532 Wed Jan 07 00:43:04 CET 2015 snd/message.wav
108464 Mon Jan 12 23:45:02 CET 2015 snd/played.wav
606552 Tue Jan 13 18:50:36 CET 2015 snd/promotion.wav
112156 Sat Jan 10 19:06:50 CET 2015 snd/select.wav
最佳答案
在深入研究文档后,我认为问题可能是您使用的是相对路径而不是绝对路径,如下所述:
所以请尝试:
ImageIcon mainMenuBg = new ImageIcon(Resources.class.getResource("/img/menubg.png"));
关于java - 可运行的 jar (ExceptionInInitializerError),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27930769/
好的,所以我想从批处理文件运行我的整个工作环境... 我想要实现什么...... 打开新的 powershell,打开我的 API 文件夹并从该文件夹运行 VS Code 编辑器(cd c:\xy;
我正在查看 Cocoa Controls 上的示例并下载了一些演示。我遇到的问题是一些例子,比如 BCTabBarController ,不会在我的设备上构建或启动。当我打开项目时,它看起来很正常,没
我刚刚开始学习 C 语言(擅长 Java 和 Python)。 当编写 C 程序(例如 hello world)时,我在 ubuntu cmd 行上使用 gcc hello.c -o hello 编译
我在 php 脚本从 cron 开始运行到超时后注意到了这个问题,但是当它从命令行手动运行时这不是问题。 (对于 CLI,PHP 默认的 max_execution_time 是 0) 所以我尝试运行
我可以使用命令行运行测试 > ./node_modules/.bin/wdio wdio.conf.js 但是如果我尝试从 IntelliJ 的运行/调试配置运行它,我会遇到各种不同的错误。 Fea
Error occurred during initialization of VM. Could not reserve enough space for object heap. Error: C
将 Anaconda 安装到 C:\ 后,我无法打开 jupyter 笔记本。无论是在带有 jupyter notebook 的 Anaconda Prompt 中还是在导航器中。我就是无法让它工作。
我遇到一个问题,如果我双击我的脚本 (.py),或者使用 IDLE 打开它,它将正确编译并运行。但是,如果我尝试在 Windows 命令行中运行脚本,请使用 C:\> "C:\Software_Dev
情况 我正在使用 mysql 数据库。查询从 phpmyadmin 和 postman 运行 但是当我从 android 发送请求时(它返回零行) 我已经记录了从 android 发送的电子邮件是正确
所以这个有点奇怪 - 为什么从 Java 运行 .exe 文件会给出不同的输出而不是直接运行 .exe。 当 java 在下面的行执行时,它会调用我构建的可与 3CX 电话系统配合使用的 .exe 文
这行代码 Environment.Is64BitProcess 当我的应用单独运行时评估为真。 但是当它在我的 Visual Studio 单元测试中运行时,相同的表达式的计算结果为 false。 我
关闭。这个问题是opinion-based .它目前不接受答案。 想要改进这个问题? 更新问题,以便 editing this post 可以用事实和引用来回答它. 关闭 8 年前。 Improve
我写了一个使用 libpq 连接到 PostgreSQL 数据库的演示。 我尝试通过包含将 C 文件连接到 PostgreSQL #include 在我将路径添加到系统变量 I:\Program F
如何从 Jenkins 运行 Android 模拟器来运行我的测试?当我在 Execiute Windows bath 命令中写入时,运行模拟器的命令: emulator -avd Tester 然后
我已经配置好东西,这样我就可以使用 ssl 登录和访问在 nginx 上运行的 errbit 我的问题是我不知道如何设置我的 Rails 应用程序的 errbit.rb 以便我可以运行测试 nginx
我编写了 flutter 应用程序,我通过 xcode 打开了 ios 部分并且应用程序正在运行,但是当我通过 flutter build ios 通过 vscode 运行应用程序时,我得到了这个错误
我有一个简短的 python 脚本,它使用日志记录模块和 configparser 模块。我在Win7下使用PyCharm 2.7.1和Python 3.3。 当我使用 PyCharm 运行我的脚本时
我在这里遇到了一些难题。 我的开发箱是 64 位的,windows 7。我所有的项目都编译为“任何 CPU”。该项目引用了 64 位版本的第 3 方软件 当我运行不使用任何 Web 引用的单元测试时,
当我注意到以下问题时,我正在做一些 C++ 练习。给定的代码将不会在 Visual Studio 2013 或 Qt Creator 5.4.1 中运行/编译 报错: invalid types 'd
假设我有一个 easteregg.py 文件: from airflow import DAG from dateutil import parser from datetime import tim
我是一名优秀的程序员,十分优秀!