编译java项目时出错
我将一个 java swing 项目导入到 netbeans 6.9 中,当我尝试清理和构建项目时,显示以下消息,尽管已编译,但我无法运行该应用程序,请提供帮助。
............
warning: [options] bootstrap class path not set in conjunction with -source 1.6
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
,
一旦我构建具有上述错误的应用程序,我在运行应用程序时会收到以下错误
org.jdesktop.application.ResourceMap$LookupException: string conversion failed: resource createNewSrn.Action.icon, type interface javax.swing.Icon
at org.jdesktop.application.ResourceMap.getObject(ResourceMap.java:578)
at org.jdesktop.application.ResourceMap.getIcon(ResourceMap.java:787)
at org.jdesktop.application.ApplicationAction.initActionProperties(ApplicationAction.java:449)
at org.jdesktop.application.ApplicationAction.<init>(ApplicationAction.java:252)
at org.jdesktop.application.ApplicationActionMap.addAnnotationActions(ApplicationActionMap.java:147)
at org.jdesktop.application.ApplicationActionMap.<init>(ApplicationActionMap.java:81)
at org.jdesktop.application.ActionManager.createActionMapChain(ActionManager.java:64)
at org.jdesktop.application.ActionManager.getActionMap(ActionManager.java:169)
at org.jdesktop.application.ApplicationContext.getActionMap(ApplicationContext.java:290)
at Manufacturing.frmSRN.initComponents(frmSRN.java:1289)
at Manufacturing.frmSRN.<init>(frmSRN.java:59)
at COMMON.FrmMDI.butitadd3ActionPerformed(FrmMDI.java:3684)
at COMMON.FrmMDI.access$7200(FrmMDI.java:60)
at COMMON.FrmMDI$49.actionPerformed(FrmMDI.java:904)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
at java.awt.Component.processMouseEvent(Component.java:6504)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)
at java.awt.Component.processEvent(Component.java:6269)
at java.awt.Container.processEvent(Container.java:2229)
at java.awt.Component.dispatchEventImpl(Component.java:4860)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Component.dispatchEvent(Component.java:4686)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
at java.awt.Container.dispatchEventImpl(Container.java:2273)
at java.awt.Window.dispatchEventImpl(Window.java:2713)
at java.awt.Component.dispatchEvent(Component.java:4686)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:707)
at java.awt.EventQueue.access$000(EventQueue.java:101)
at java.awt.EventQueue$3.run(EventQueue.java:666)
at java.awt.EventQueue$3.run(EventQueue.java:664)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:680)
at java.awt.EventQueue$4.run(EventQueue.java:678)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:677)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:211)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
Caused by: org.jdesktop.application.ResourceConverter$ResourceConverterException: couldn't find Icon resource "/images/folder_new.png" string: "/images/folder_new.png"
at org.jdesktop.application.ResourceMap.loadImageIcon(ResourceMap.java:1378)
at org.jdesktop.application.ResourceMap.access$000(ResourceMap.java:93)
at org.jdesktop.application.ResourceMap$IconStringConverter.parseString(ResourceMap.java:1465)
at org.jdesktop.application.ResourceMap.getObject(ResourceMap.java:573)
... 51 more
I imported a java swing project into netbeans 6.9 and when I am trying to clean and build the project following message displayed, and I can't run the application though it is compiled, please help.
......
warning: [options] bootstrap class path not set in conjunction with -source 1.6
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
....
I am getting following error when running the application once I build the application with the above error,
org.jdesktop.application.ResourceMap$LookupException: string conversion failed: resource createNewSrn.Action.icon, type interface javax.swing.Icon
at org.jdesktop.application.ResourceMap.getObject(ResourceMap.java:578)
at org.jdesktop.application.ResourceMap.getIcon(ResourceMap.java:787)
at org.jdesktop.application.ApplicationAction.initActionProperties(ApplicationAction.java:449)
at org.jdesktop.application.ApplicationAction.<init>(ApplicationAction.java:252)
at org.jdesktop.application.ApplicationActionMap.addAnnotationActions(ApplicationActionMap.java:147)
at org.jdesktop.application.ApplicationActionMap.<init>(ApplicationActionMap.java:81)
at org.jdesktop.application.ActionManager.createActionMapChain(ActionManager.java:64)
at org.jdesktop.application.ActionManager.getActionMap(ActionManager.java:169)
at org.jdesktop.application.ApplicationContext.getActionMap(ApplicationContext.java:290)
at Manufacturing.frmSRN.initComponents(frmSRN.java:1289)
at Manufacturing.frmSRN.<init>(frmSRN.java:59)
at COMMON.FrmMDI.butitadd3ActionPerformed(FrmMDI.java:3684)
at COMMON.FrmMDI.access$7200(FrmMDI.java:60)
at COMMON.FrmMDI$49.actionPerformed(FrmMDI.java:904)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
at java.awt.Component.processMouseEvent(Component.java:6504)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)
at java.awt.Component.processEvent(Component.java:6269)
at java.awt.Container.processEvent(Container.java:2229)
at java.awt.Component.dispatchEventImpl(Component.java:4860)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Component.dispatchEvent(Component.java:4686)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
at java.awt.Container.dispatchEventImpl(Container.java:2273)
at java.awt.Window.dispatchEventImpl(Window.java:2713)
at java.awt.Component.dispatchEvent(Component.java:4686)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:707)
at java.awt.EventQueue.access$000(EventQueue.java:101)
at java.awt.EventQueue$3.run(EventQueue.java:666)
at java.awt.EventQueue$3.run(EventQueue.java:664)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:680)
at java.awt.EventQueue$4.run(EventQueue.java:678)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:677)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:211)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
Caused by: org.jdesktop.application.ResourceConverter$ResourceConverterException: couldn't find Icon resource "/images/folder_new.png" string: "/images/folder_new.png"
at org.jdesktop.application.ResourceMap.loadImageIcon(ResourceMap.java:1378)
at org.jdesktop.application.ResourceMap.access$000(ResourceMap.java:93)
at org.jdesktop.application.ResourceMap$IconStringConverter.parseString(ResourceMap.java:1465)
at org.jdesktop.application.ResourceMap.getObject(ResourceMap.java:573)
... 51 more
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
告诉 NetBeans 您要使用 JDK 6 进行编译;它应该假设您正在使用这些语言功能。
我不知道在哪里做,但看起来它假设 JDK 不是版本 6。
Tell NetBeans that you want to compile using JDK 6; it should assume that you're using those language features.
I'm not sure where to do it, but it looks like it's assuming a JDK other than version 6.
如果您使用 JDK 7 编译项目,但指定源或目标为早期版本(例如 1.6 => Java 6),它会警告您确实应该使 bootclasspath 指向 Java 6 库,以确保代码实际上能够在 Java 1.6 上运行(例如,确保您没有使用 Java 6 中引入的类或方法)。
因此,要么使用源/目标 1.7,要么使用 JDK 6 进行编译,或者配置您的构建以将 bootclasspath 设置为 Java 6 的引导类路径。
If you use JDK 7 to compile a project but specify source or target to be an earlier version (like 1.6 => Java 6), it warns you that you should really make the bootclasspath point to the Java 6 libraries to make sure that the code will actually be able to run on Java 1.6 (eg to make sure that you are not using classes or methods introduced in Java 6).
So either use source/target 1.7, or compile with JDK 6, or configure your build to set the bootclasspath to that of Java 6.