本文主要是介绍使用DrlParser 检测drl文件是否有错误,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
为避免运行时候错误,drools 7 可以使用DrlParser预先检测 drl文件是否正常。
- parser 过程通常不会返回异常
- ruleDescr = parser.parse(resource); 为空代表有异常
具体测试代码如下:
public class DrlParserTest {public static void main(String[] args) {// 定义规则文件内容Resource resource =new ClassPathResource("org/drools/learn/Error.drl");// 使用 DrlParser 解析规则DrlParser parser = new DrlParser();// RuleDescrBuilder ruleDescrBuilder = new RuleDescrBuilder("ExampleRule");// RuleDescr ruleDescr = null;PackageDescr ruleDescr=null;try {ruleDescr = parser.parse(resource);} catch (DroolsParserException e) {System.err.println("DroolsParserException "+e.getMessage());} catch (IOException e) {System.err.println("IOException "+e.getMessage());}// parser失败 ruleDescr为空if (ruleDescr==null ){List<DroolsError> errs = parser.getErrors();errs.forEach( e->{System.err.println("error: "+e.getMessage());});}// 输出解析后的规则描述System.out.println("Parsed Rule: " + ruleDescr);}
}
这篇关于使用DrlParser 检测drl文件是否有错误的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!