SAP/cf-java-logging-support

Not able to create executable spring jar.. getting EXCEPTION:: Exception in thread "main" java.lang.NoClassDefFoundError: org/springframework/boot/SpringApplication at com.movie.cataloge.moviecatalogservice.MovieCatalogServiceApplication.main(MovieCatalogServiceApplication.java:16) Caused by: java.lang.ClassNotFoundException: org.springframework.boot.SpringApplication at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581) at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522) ... 1 more

Opened this issue · 3 comments


4.0.0

org.springframework.boot
spring-boot-starter-parent
2.4.0


com.movie.cataloge
movie-catalog-service
0.0.1
movie-catalog-service
Demo project for Spring Boot

	<start-class>com.movie.cataloge.moviecatalogservice.MovieCatalogServiceApplication</start-class>
	<java.version>11</java.version>
	<spring-cloud.version>2020.0.0</spring-cloud.version>
</properties>
<dependencies>
	<dependency>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-web</artifactId>
	</dependency>
	<dependency>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-webflux</artifactId>
	</dependency>


	<dependency>
		<groupId>org.projectlombok</groupId>
		<artifactId>lombok</artifactId>
		<optional>true</optional>
	</dependency>

	<dependency>
		<groupId>org.springframework.cloud</groupId>
		<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
	</dependency>
	<!--<dependency>
		<groupId>javax.xml.bind</groupId>
		<artifactId>jaxb-api</artifactId>
		<version>2.3.0</version>
	</dependency>-->
	<dependency>
		<groupId>javax.xml.bind</groupId>
		<artifactId>jaxb-api</artifactId>
		<version>2.3.0</version>
	</dependency>
	<dependency>
		<groupId>org.glassfish.jaxb</groupId>
		<artifactId>jaxb-runtime</artifactId>
		<version>2.3.0</version>
		<scope>runtime</scope>
	</dependency>
	<dependency>
		<groupId>javax.activation</groupId>
		<artifactId>javax.activation-api</artifactId>
		<version>1.2.0</version>
	</dependency>
	<dependency>
		<groupId>javax.xml.ws</groupId>
		<artifactId>jaxws-api</artifactId>
		<version>2.3.0</version>
		<scope>test</scope>
	</dependency>

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

<dependencyManagement>
	<dependencies>
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-dependencies</artifactId>
			<version>${spring-cloud.version}</version>
			<type>pom</type>
			<scope>import</scope>
		</dependency>
	</dependencies>
</dependencyManagement>

<build>
	<plugins>
		<plugin>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-maven-plugin</artifactId>
		</plugin>
	</plugins>
</build>
<repositories>
	<repository>
		<id>spring-milestones</id>
		<name>Spring Milesstones</name>
		<url>https://repo.spring.io/milestone</url>
	</repository>
</repositories>

This is the pom.xml file
using JDK 11
and maven 3.2.0

Hi @bony1111,

Please elaborate, why you posted this issue in cf-java-logging-support. The error message does not indicate any problem with the library. There isn't even any artifact of cf-java-logging-support in the pom.xml you posted.

Best Regards,
Karsten

I am building a jar with intellij with this configuration, the jar is getting created but, Not able to execute the jar, while doing java -jar ,jar it is giving this error

I get what you are trying to do. But why do you post an issue with cf-java-logging-support? To me, this has nothing to do with this Github repository.

I can guess, that your pom.xml might miss the Spring Boot Maven Plugin:

<plugins>
    <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
        <version>${spring.boot.version}</version>
        <executions>
            <execution>
                <goals>
                    <goal>repackage</goal>
                </goals>
            </execution>
        </executions>
    </plugin>
</plugins>

This plugin is responsible to create the executable shaded jar, by packaging all Maven dependencies in this jar. Your jar seems to be lacking all Spring dependencies, which would be the case, if the plugin was missing.