java.lang.ClassNotFoundException:antlr.ANTLRException但我在项目文件夹lib中有antlr-2.7.6

时间:2013-06-18 11:52:08

标签: hibernate classpath antlr classnotfoundexception

我在.classpath中有这个:

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
    ...
    ...
<classpathentry kind="lib" path="lib/hibernate3.jar"/>
<classpathentry kind="lib" path="lib/antlr-2.7.6.jar"/>
    ...
</classpath>

一些.jar补充说。当我尝试这个时:

Query query2 = session.createQuery(sql2);

抛出问题名称中的异常:

  

java.lang.ClassNotFoundException:antlr.ANTLRException

有什么想法吗?

提前致谢。

问候。

1 个答案:

答案 0 :(得分:2)

这与Hibernate API有关。 Hibernate 3.0使用ANTLR(另一种语言识别工具)来处理HSQL查询 - 如果我没记错的话 您需要在类路径中添加一个额外的jar(ANTLR-2.7.5H3.jar)。

或者您可以将以下maven依赖项添加到pom.xml

<dependency>
<groupId>org.hibernate</groupId>
<artifactId>antlr</artifactId>
<version>2.7.5H3</version>
</dependency>