Drools项目单元测试在IDEA中运行正常但Ant构建失败:缺少drools-mvel依赖
Drools项目单元测试在IDEA中运行正常但Ant构建失败:缺少drools-mvel依赖
嗨,这个问题我太熟啦!其实原因特别好懂——IDEA悄悄帮你补全了依赖,可Ant构建是个“认死理”的家伙,你没明确告诉它要加的依赖,它就找不到啦。
你看报错信息里明明白白说了要把org.drools:drools-mvel加到类路径里,那咱们就针对性解决:
- 先打开你的Ant构建脚本,找到那个叫
test的target,重点盯紧里面的类路径配置(就是<classpath>标签那部分) - 把drools-mvel的jar包加进去就行。如果是手动管理jar包,就把对应版本的drools-mvel.jar放到项目的lib目录,然后在classpath里加一行引用:
<classpath> <!-- 这里是你原来的其他依赖配置 --> <pathelement location="lib/drools-mvel-x.x.x.jar"/> <!-- 记得把x.x.x换成你用的Drools版本号哦 --> </classpath>
- 要是你用Ivy或者Maven来管理依赖,那得确保Ant脚本里的依赖配置包含了
drools-mvel,让构建时能自动拉取这个包
为啥IDEA里就没问题呢?因为IDEA在同步项目的时候,会自动识别你Drools项目需要的相关依赖,悄悄把drools-mvel也加到运行类路径里了,所以单元测试跑起来顺风顺水。但Ant构建完全依赖你写的脚本配置,你没写的它一概不认,自然就报缺少依赖的错啦。
对了,还要注意版本对齐哦,drools-mvel的版本必须和你用的Drools核心版本一模一样,不然可能会冒出新的兼容问题~
内容来源于stack exchange
相关产品推荐
相关产品推荐

