Error: java.lang.NoClassDefFoundError: antlr/RecognitionException
Error: java.lang.NoClassDefFoundError: antlr/RecognitionException
我有 Spring 使用 JPA + MySQL + Thymeleaf 的引导项目,但日食显示错误。
在marven dependencies中找到antlr 2.7.7 jar库
我在 pom.xml 中的依赖项:
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
antlr 是 JPA 和 Hibernate 的依赖项,但控制台显示:
java.lang.ClassNotFoundException: antlr.RecognitionException
at java.net.URLClassLoader.findClass(URLClassLoader.java:381) ~[na:1.8.0_111]
at java.lang.ClassLoader.loadClass(ClassLoader.java:424) ~[na:1.8.0_111]
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) ~[na:1.8.0_111]
...
我创建了模型和存储库,但是当调用 findAll() 函数时,网络应用程序崩溃了。
在控制器中:
@Autowired
private CategoryRepository categoryRepository;
...
Iterable<CategoryModel> categories = categoryRepository.findAll();
在存储库中:
public interface CategoryRepository extends CrudRepository<CategoryModel, BigInteger>{
List<CategoryModel> findById(BigInteger id);
}
会发生什么?
我的解决方案:本地存储库已损坏,从 Linux 删除文件夹 ~/.m2/ 并重新加载 eclipse。
我有 Spring 使用 JPA + MySQL + Thymeleaf 的引导项目,但日食显示错误。
在marven dependencies中找到antlr 2.7.7 jar库
我在 pom.xml 中的依赖项:
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
antlr 是 JPA 和 Hibernate 的依赖项,但控制台显示:
java.lang.ClassNotFoundException: antlr.RecognitionException
at java.net.URLClassLoader.findClass(URLClassLoader.java:381) ~[na:1.8.0_111]
at java.lang.ClassLoader.loadClass(ClassLoader.java:424) ~[na:1.8.0_111]
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) ~[na:1.8.0_111]
...
我创建了模型和存储库,但是当调用 findAll() 函数时,网络应用程序崩溃了。
在控制器中:
@Autowired
private CategoryRepository categoryRepository;
...
Iterable<CategoryModel> categories = categoryRepository.findAll();
在存储库中:
public interface CategoryRepository extends CrudRepository<CategoryModel, BigInteger>{
List<CategoryModel> findById(BigInteger id);
}
会发生什么?
我的解决方案:本地存储库已损坏,从 Linux 删除文件夹 ~/.m2/ 并重新加载 eclipse。