Spring Boot: NoClassDefFoundError: org/springframework/boot/SpringBootConfiguration

 
 
 
Сообщения:35
Валится на тестах при
mvn package


Трейс:
[INFO] Scanning for projects...
[INFO]                                                                         
[INFO] ------------------------------------------------------------------------
[INFO] Building resthub 0.0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO] 
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ caffinno ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 1 resource
[INFO] Copying 0 resource
[INFO] 
[INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ caffinno ---
[INFO] Nothing to compile - all classes are up to date
[INFO] 
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ caffinno ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory D:\SoftServeProject\RestHub\src\test\resources
[INFO] 
[INFO] --- maven-compiler-plugin:3.1:testCompile (default-testCompile) @ caffinno ---
[INFO] Nothing to compile - all classes are up to date
[INFO] 
[INFO] --- maven-surefire-plugin:2.18.1:test (default-test) @ caffinno ---
[INFO] Surefire report directory: D:\SoftServeProject\RestHub\target\surefire-reports

-------------------------------------------------------
 T E S T S
-------------------------------------------------------
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
Running com.kh013j.CaffinnoApplicationTests
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.372 sec <<< FAILURE! - in com.kh013j.CaffinnoApplicationTests
initializationError(com.kh013j.CaffinnoApplicationTests)  Time elapsed: 0.345 sec  <<< ERROR!
java.lang.NoClassDefFoundError: org/springframework/boot/SpringBootConfiguration
	at org.springframework.boot.test.context.SpringBootConfigurationFinder.<init>(SpringBootConfigurationFinder.java:45)
	at org.springframework.boot.test.context.SpringBootTestContextBootstrapper.getOrFindConfigurationClasses(SpringBootTestContextBootstrapper.java:200)
	at org.springframework.boot.test.context.SpringBootTestContextBootstrapper.processMergedContextConfiguration(SpringBootTestContextBootstrapper.java:137)
	at org.springframework.test.context.support.AbstractTestContextBootstrapper.buildMergedContextConfiguration(AbstractTestContextBootstrapper.java:409)
	at org.springframework.test.context.support.AbstractTestContextBootstrapper.buildDefaultMergedContextConfiguration(AbstractTestContextBootstrapper.java:323)
	at org.springframework.test.context.support.AbstractTestContextBootstrapper.buildMergedContextConfiguration(AbstractTestContextBootstrapper.java:277)
	at org.springframework.test.context.support.AbstractTestContextBootstrapper.buildTestContext(AbstractTestContextBootstrapper.java:112)
	at org.springframework.boot.test.context.SpringBootTestContextBootstrapper.buildTestContext(SpringBootTestContextBootstrapper.java:82)
	at org.springframework.test.context.TestContextManager.<init>(TestContextManager.java:120)
	at org.springframework.test.context.TestContextManager.<init>(TestContextManager.java:105)
	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTestContextManager(SpringJUnit4ClassRunner.java:152)
	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.<init>(SpringJUnit4ClassRunner.java:143)
	at org.springframework.test.context.junit4.SpringRunner.<init>(SpringRunner.java:49)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at org.junit.internal.builders.AnnotatedBuilder.buildRunner(AnnotatedBuilder.java:104)
	at org.junit.internal.builders.AnnotatedBuilder.runnerForClass(AnnotatedBuilder.java:86)
	at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59)
	at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:26)
	at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59)
	at org.junit.internal.requests.ClassRequest.getRunner(ClassRequest.java:33)
	at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:283)
	at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:173)
	at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:153)
	at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:128)
	at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:203)
	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:155)
	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:103)


Results :

Tests in error: 
  CaffinnoApplicationTests.initializationError » NoClassDefFound org/springframe...

Tests run: 1, Failures: 0, Errors: 1, Skipped: 0

[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 29.261 s
[INFO] Finished at: 2018-01-29T17:53:48+02:00
[INFO] Final Memory: 18M/112M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.18.1:test (default-test) on project caffinno: There are test failures.
[ERROR] 
[ERROR] Please refer to D:\SoftServeProject\RestHub\target\surefire-reports for the individual test results.
[ERROR] -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException

Process finished with exit code 1


pom.xml:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>

	<groupId>com.kh013j</groupId>
	<artifactId>caffinno</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<packaging>war</packaging>

	<name>resthub</name>
	<description>This is site for restaurant service improvement by automatisation of some processes in there.</description>

	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>1.5.9.RELEASE</version>
		<relativePath/> <!-- lookup parent from repository -->
	</parent>

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
		<java.version>1.8</java.version>
	</properties>

	<dependencies>
		<dependency>
			<groupId>org.liquibase</groupId>
			<artifactId>liquibase-core</artifactId>
		</dependency>
		<dependency>
			<groupId>org.apache.tomcat.embed</groupId>
			<artifactId>tomcat-embed-jasper</artifactId>
		</dependency>
		<dependency>
			<groupId>javax.servlet</groupId>
			<artifactId>jstl</artifactId>
		</dependency>

		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>4.12</version>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>

		<dependency>
			<groupId>org.postgresql</groupId>
			<artifactId>postgresql</artifactId>
			<scope>runtime</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>
	</dependencies>

	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
		</plugins>
	</build>


</project>

Подскажет кто в чём дело?
Изменен:29 янв 2018 17:37
 
 
Сообщения:9691
Quote:
java.lang.NoClassDefFoundError: org/springframework/boot/SpringBootConfiguration
Это всегда значит, что класса не оказалось в ClassPath. Т.е. нет нужной зависимости. Видимо не хватает:
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot</artifactId>
</dependency>
PS: не нужно наследоваться от каких-то левых проектов типа спринг бута. Либо явно объявляй зависимости в своем проекте, либо используй <scope>import</scope> вместо наследования.
Изменен:29 янв 2018 17:28
 
 
Сообщения:35
Староверъ:
Quote:
java.lang.NoClassDefFoundError: org/springframework/boot/SpringBootConfiguration
Это всегда значит, что класса не оказалось в ClassPath. Т.е. нет нужной зависимости. Видимо не хватает:
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot</artifactId>
</dependency>
PS: не нужно наследоваться от каких-то левых проектов типа спринг бута. Либо явно объявляй зависимости в своем проекте, либо используй <scope>import</scope> вместо наследования.


Добавление зависимости, к сожалению, не помогло. Валится точно так же. Что странно, над проектом работаю не только я. Потянул из рабочей ветки гитхаба, у всех работает - у меня нет.

P.S. Проект учебный. Как поставили задачу, так и пилим:) Обязательно просмотрю инфу об этом варианте. Если есть какие ссылки почитать - буду рад.
 
 
Сообщения:35
Идея вроде видит этот класс в classpath, но как-то странно
 
 
Сообщения:9691
Дак если проект учебный и на гитхабе, может просто ссылку на него дашь?
vlahip:
P.S. Проект учебный. Как поставили задачу, так и пилим:) Обязательно просмотрю инфу об этом варианте. Если есть какие ссылки почитать - буду рад.
Хм, учебный проект на SpringBoot - сурово.

UPDATE: попробуй почистить спринговые библиотеки из локального maven репозитория. Похоже зависимость битой скачалась. Можно так перевыкачать зависимости: mvn dependency:purge-local-repository.
Изменен:29 янв 2018 17:46
 
 
Сообщения:35
Староверъ:
Дак если проект учебный и на гитхабе, может просто ссылку на него дашь?


Ветка, из которой тянул:
Тык


Староверъ:
Хм, учебный проект на SpringBoot - сурово.

Почему?

Староверъ:

UPDATE: попробуй почистить спринговые библиотеки из локального maven репозитория.

То-есть удалить их из .m2?
 
 
Сообщения:9691
vlahip:
То-есть удалить их из .m2?
Да, из ~/.m2/repository
vlahip:
Староверъ:
Хм, учебный проект на SpringBoot - сурово.

Почему?
Потому что SpringBoot скрывает все, чему нужно было бы обучаться на учебном проекте. Вместо того чтоб видеть своими глазами что как происходит - все будет казаться магией.
 
 
Сообщения:35
Староверъ:
попробуй почистить спринговые библиотеки из локального maven репозитория. Похоже зависимость битой скачалась. Можно так перевыкачать зависимости: mvn dependency:purge-local-repository.


Это помогло. Большое спасибо!
 
Модераторы:wedens
Сейчас эту тему просматривают:Нет