Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Spring Boot Application failed to start with classpath: []

I generated a Spring Boot application with jHipster, added some code from my previous project (non-jhipster project) and tried to run it using IDEA. First I got an error message similar to this, saying "Command line is too long.." (I am running Windows 10 x64). I clicked enable, but then I got an error like this.:

"C:\Program Files\Java\jdk1.8.0_144\bin\java" -agentlib:jdwp=transport=dt_socket,address=127.0.0.1:51351,suspend=y,server=n -XX:TieredStopAtLevel=1 -noverify -Dspring.output.ansi.enabled=always -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=51350 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dspring.liveBeansView.mbeanDomain -Dspring.application.admin.enabled=true -Dfile.encoding=UTF-8 -classpath C:\Users\User\AppData\Local\Temp\classpath.jar com.test.pc.TestPartsComposerApp
Connected to the target VM, address: '127.0.0.1:51351', transport: 'socket'
The Class-Path manifest attribute in C:\Users\User\AppData\Local\Temp\classpath.jar referenced one or more files that do not exist: .... Extremely long list of jars
07:48:56.779 [main] DEBUG org.springframework.boot.devtools.settings.DevToolsSettings - Included patterns for restart : []
07:48:56.779 [main] DEBUG org.springframework.boot.devtools.settings.DevToolsSettings - Excluded patterns for restart : [/spring-boot-starter/target/classes/, /spring-boot-autoconfigure/target/classes/, /spring-boot-starter-[\w-]+/, /spring-boot/target/classes/, /spring-boot-actuator/target/classes/, /spring-boot-devtools/target/classes/]
07:48:56.779 [main] DEBUG org.springframework.boot.devtools.restart.ChangeableUrls - Matching URLs for reloading : []

07:48:57.570 [restartedMain] DEBUG org.springframework.boot.logging.ClasspathLoggingApplicationListener - Application failed to start with classpath: []

After I tried with ./mvnw:

The Class-Path manifest attribute in C:\Users\User\.m2\repository\com\sun\xml\bind\jaxb-impl\2.2.3-1\jaxb-impl-2.2.3-1.jar referenced one or more files that do not exist: C:\Users\User\.m2\repository\com\sun\xml\bind\jaxb-impl\2.2.3-1\jaxb-api.jar,C:\Users\User\.m2\repository\com\sun\xml\bind\jaxb-impl\2.2.3-1\activation.jar,C:\Users\User\.m2\repository\com\sun\xml\bind\jaxb-impl\2.2.3-1\jsr173_1.0_api.jar,C:\Users\User\.m2\repository\com\sun\xml\bind\jaxb-impl\2.2.3-1\jaxb1-impl.jar
The Class-Path manifest attribute in C:\Users\User\.m2\repository\org\liquibase\liquibase-core\3.5.3\liquibase-core-3.5.3.jar referenced one or more files that do not exist: C:\Users\User\.m2\repository\org\liquibase\liquibase-core\3.5.3\lib\snakeyaml-1.13.jar
07:53:54.295 [main] DEBUG org.springframework.boot.devtools.settings.DevToolsSettings - Included patterns for restart : []
07:53:54.295 [main] DEBUG org.springframework.boot.devtools.settings.DevToolsSettings - Excluded patterns for restart : [/spring-boot-starter/target/classes/, /spring-boot-autoconfigure/target/classes/, /spring-boot-starter-[\w-]+/, /spring-boot/target/classes/, /spring-boot-actuator/target/classes/, /spring-boot-devtools/target/classes/]
07:53:54.295 [main] DEBUG org.springframework.boot.devtools.restart.ChangeableUrls - Matching URLs for reloading : [file:/C:/workspace/jh-fpc/TestPartsComposer/target/classes/]
07:53:55.295 [restartedMain] DEBUG org.springframework.boot.logging.ClasspathLoggingApplicationListener - Application failed to start with classpath: [file:/C:/workspace/jh-fpc/TestPartsComposer/target/classes/]

I posted my pom.xml here.

I created a completely new project, and started adding the maven dependencies I had one by one and Ran the project after every step. The problem with the classpath occurs, when I add BOTH spring-batch and guava to the pom.

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-batch</artifactId>
</dependency>
<!-- https://mvnrepository.com/artifact/com.google.guava/guava -->
<dependency>
    <groupId>com.google.guava</groupId>
    <artifactId>guava</artifactId>
    <version>${guava-core.version}</version>
</dependency>
like image 354
szab.kel Avatar asked Oct 06 '17 06:10

szab.kel


4 Answers

I had this same problem in a jHipster application with the same error messages and for me the root cause for me was wrong formatting (indentation) of spring mail settings in application-dev.yml. I just copy/pasted the settings from another project and IntelliJ indented them a bit differently than they were in original code and because of that they could not be resolved.

Those "manifest attribute" things appear every time when starting the application but at least for me they were not related to the real issue. Hope this helps to get to the root of the cause! Cheers,

like image 174
koni123 Avatar answered Oct 23 '22 19:10

koni123


This error message is output by ClasspathLoggingApplicationListener#onApplicationEvent

But it does not output the real reason of the error.

So, you should start your app in debug mode, and add a breakpoint at this line, then you can check event.exception, and find out what is the real error happened.

This problem wasted me like 30 minutes.... Hope this answer can save someone a little time

like image 39
Li Ying Avatar answered Oct 23 '22 18:10

Li Ying


Same issue, I just forgot to set spring.profiles.active in application.properties and I have multiple application-*.properties

like image 2
akuma8 Avatar answered Oct 23 '22 18:10

akuma8


Remove the dependency spring-boot-devtools

like image 2
Anoyi Avatar answered Oct 23 '22 20:10

Anoyi