我制作了一个使用elf文件(* .a和* .o)并提供方法名称列表的应用程序,但是如果有人将任何文件重命名为* .a或* .o,它将显示:
Exception occurred during event dispatching:
java.lang.NoClassDefFoundError: org/eclipse/core/resources/IWorkspaceRunnable
at org.eclipse.cdt.utils.AR.<init>(AR.java:237)
at com.lge.windowELF.ElfBinaryArchive.<init>(ElfBinaryArchive.java:24)
at com.lge.windowELF.ELFParserLibraryFile.createBinaryArchive(ELFParserLibraryFile.java:230)
at com.lge.windowELF.ELFParserLibraryFile.<init>(ELFParserLibraryFile.java:46)
at com.lge.windowELF.ELFWrapper.<init>(ELFWrapper.java:36)
at com.lge.windowELF.ELF_UIIntegrated.actionPerformed(ELF_UIIntegrated.java:510)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
在这种情况下,我想给出一些警告信息。try / catch不会捕获此异常。
它不鼓励来捕捉Error
!JavaDoc指出:
An
Error
是Throwable的子类,它指示严重的问题,而合理的应用程序不应尝试抓住这些问题。
我的建议是您整理出代码,NoClassDefFoundError
并担心代码抛出的异常。
我宁愿在代码中,当类尝试打开ELF文件时,InvalidELFFileException
在ElfBinaryArchive
构造函数类上抛出(有根据的猜测)(或包装该类并throws
在实例化时执行一个)。这样,如果存在无效的ELF文件,则会引发体面的异常。
或者,确保org.eclipse.core.resources.IWorkspaceRunnable
必须将其放在CLASSPATH中。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句