跳过Java编译错误

时间:2013-06-13 10:44:43

标签: java

是否可以跳过Java编译错误?

因此即使遇到错误,程序也可能继续。

所以最大努力继续工作(直到一切爆炸)

7 个答案:

答案 0 :(得分:4)

没有。如果出现编译错误,则表示您的程序不是有效的Java。什么意思继续下去?它还没有运行。

答案 1 :(得分:2)

如果您有编译错误,则无法将程序编译为运行时代码。这实际上意味着该程序无法运行。

所以,答案是 NO ,它不能。

还有其他类型的错误 - 运行时错误。这些是由于代码中的错误逻辑(即尝试修改空对象)而发生的。编译器无法发现那些非常微妙的,依赖于数据(并且大部分时间取决于用户输入)错误。您可以跳过使用 try-catch 块的那些。如果您想了解更多信息,请参阅以下文章:

http://docs.oracle.com/javase/tutorial/essential/exceptions/try.html

答案 2 :(得分:2)

是的,你可以使用eclipse编译器来做到这一点。它将用一个在调用它时直接抛出异常的方法替换包含错误的方法。

这将允许您运行程序的其余部分。我不会推荐它,因为你会得到一个不一致的程序。因此请自担风险。

它仍然可以派上用场,例如,如果你运行unittests。这允许您运行测试,即使程序的某些部分肯定不起作用。

答案 3 :(得分:1)

只是不可能。编译java代码为您提供了在JVM上运行的字节代码。如果编译失败,则Java编译器将无法生成有效的字节代码。这就是生成不能由JVM无法运行的错误字节代码没有意义的原因。

答案 4 :(得分:1)

如果我们打破那个东西,那么迟早没有人会开发代码。 :)

答案 5 :(得分:1)

嗯......有点。

某些IDE允许您运行包含编译错误的代码。例如,Eclipse。

当您尝试执行(比方说)带有编译错误的方法时,您会收到一个异常,其消息说明此代码中存在编译错误。实际上,Eclipse编译器已经将该方法编译为一个将抛出异常的存根方法。

请注意,此行为未得到JLS的认可。就个人而言,我认为使用这个IDE功能是个坏主意。


IMO,更好的方法是注释掉给出编译错误的代码部分......或者只修复它们。

答案 6 :(得分:0)

您希望避免compilation errors,您有什么用?如果您避免编译错误,您会得到.class文件吗?没有.class文件你无法想象运行代码。 当您的代码包含语法eroor时,会出现编译错误。没有正确的语法,你什么都做不了。 有关编译错误的更多信息,请参阅THIS