Reputation: 987
i have created spring rest services using eclipse IDE. It works fine in eclipse when i run using Debug configurations however when I export it as a executable JAR and run using below command
java -jar cs.jar
it gives me below error:
org.springframework.context.ApplicationContextException: Unable to start embedde
d container; nested exception is org.springframework.boot.context.embedded.Embed
dedServletContainerException: Unable to start embedded Tomcat
at org.springframework.boot.context.embedded.EmbeddedWebApplicationConte
xt.onRefresh(EmbeddedWebApplicationContext.java:124)
at org.springframework.context.support.AbstractApplicationContext.refres
h(AbstractApplicationContext.java:474)
at org.springframework.boot.context.embedded.EmbeddedWebApplicationConte
xt.refresh(EmbeddedWebApplicationContext.java:109)
why it's not working as a jar?
Upvotes: 0
Views: 1509
Reputation: 26
You need to check if you have included servlet-api jar in your classpath, if yes, delete it.
If servlet-api is in classpath, it is included in WEB-INF/lib and then the error is thrown because servlet container has already servlet api jar.
Delete servlet-api dependency from maven or gradle if exits or if this dependency is adding by any other module then exclude servlet api dependency like below
<dependency>
<groupId><groupId></groupId>
<artifactId><some dependency></artifactId>
<version><version></version>
<exclusions>
<exclusion>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
</exclusion>
</exclusions>
</dependency>
Upvotes: 1