如何检查Java源文件是否有效(没有错误)?

如何检查Java源文件是否有效(没有错误)?,java,validation,javaparser,Java,Validation,Javaparser,在我的代码中,我打开我的文件.java,并用 file.java: public class File{ public void ownMethod(){...} public static void main(String[] args){ ownMethod(5); //Note the extra parameter } } 在file.java中有一个错误:方法main使用一个参数调用方法ownMethod,但是ownMetho

在我的代码中,我打开我的文件.java,并用

file.java

public class File{

     public void ownMethod(){...}

     public static void main(String[] args){

          ownMethod(5); //Note the extra parameter

     }
}
在file.java中有一个错误:方法
main
使用一个参数调用方法
ownMethod
,但是
ownMethod
需要0个参数。JavaParser未检测到此错误,并使用此错误解析file.java。如何(在代码中)知道file.java是否没有错误?不使用java编译器也可以吗

不使用java编译器也可以吗


不。任何你(重新?)发明的解决方案都会让你找到另一个编译器。分析和验证错误是编译器工作的一个重要部分。

类需要使用小写c编写。:)谢谢你,菲瓦:P我的好,没问题,这些小事你自己都看不见。:)这在EclipseJDT中是可能的。当然,从某种意义上说,这是一个Java编译器,但它可以作为一堆JAR部署。IDE可以验证,在不显式编译它的情况下(是的,它确实编译了它,但在后台,你永远看不到它,所以我想这很重要)@MightyPork显式或隐式地编译它。所以ursa的观点是站得住脚的。我同意:有很多事情基本上需要一个编译器。但是,我们计划将来在JavaParser本身中构建一些验证,以便检查AST是否有效。对于完整的验证,我们还需要使用JavaSymbolSolver,它解析类型和方法调用。它基本上重新实现了你在编译器中找到的很多东西。
public class File{

     public void ownMethod(){...}

     public static void main(String[] args){

          ownMethod(5); //Note the extra parameter

     }
}