有没有一种方法可以让Eclipse在方法中抛出异常时抑制丢失的throws
声明的错误?丢失`throws`的缺失错误
如果你要在没有明确指定throws
的情况下构建并运行某些东西,它将展开到main
方法并使程序崩溃(这是我在此特定情况下所需的)。有一些例外,比如sun.reflect.generics.reflectiveObjects.NotImplementedException
,它允许你扔它而不需要指定throws
。
有没有一种方法可以让Eclipse在方法中抛出异常时抑制丢失的throws
声明的错误?丢失`throws`的缺失错误
如果你要在没有明确指定throws
的情况下构建并运行某些东西,它将展开到main
方法并使程序崩溃(这是我在此特定情况下所需的)。有一些例外,比如sun.reflect.generics.reflectiveObjects.NotImplementedException
,它允许你扔它而不需要指定throws
。
Eclipse在这里没有做任何特别的事情;问题出在Java代码本身。您的两个最佳选择是更改方法的签名以包含throws
,或捕获异常并将其重新抛出为RuntimeException(或RuntimeException的子类)。
try {
doWhatever();
} catch (SomeException e) {
throw new SomeRuntimeException(e);
}
...其中SomeException是或扩展了Exception(但不是RuntimeException),SomeRuntimeException是或扩展了RuntimeException。
欲了解更多信息,请查看有关checked Exceptions的Sun Java教程中的部分。
+1'RuntimeException'做到了!谢谢。在这种情况下,我创建了自己的异常,所以和将'extends Exception'更改为'extends RuntimeException'一样简单。 – Qix
难道你不能只是添加一个抛出声明到你的主要方法吗? (我没有在这台计算机上安装Eclipse,所以我不能自己测试它,不幸的是...) –
不是当调用层次非常深时。在这个例外情况下,我必须添加超过13个抛出声明,这不是我想要做的事情。 – Qix
看看[这个答案](http://stackoverflow.com/a/3624776/38055) - 显示的选项窗格似乎有很多选项的各种错误和警告。也许那里有什么? –