如何解决Pom的spring-boot-maven-plugin中的exec分类器-pod启动错误-Openshift
我正试图将微服务推向联系,同时部署到openshift。
我的pom得到了:
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<classifier>exec</classifier>
</configuration>
</plugin>
这将导致在构建时创建两个jar文件。
my-service-exec.jar my-service.jar
我接受了https://docs.spring.io/spring-boot/docs/1.4.1.RELEASE/maven-plugin/examples/repackage-classifier.html的建议,并将exec分类器添加到了pom中。
在部署之后和Pod启动时,我看到以下错误消息:
ERROR Neither $JAVA_MAIN_CLASS nor $JAVA_APP_JAR is set and 2 JARs found in /deployments (1 expected)
并且吊舱没有启动。
在这方面的任何帮助都将受到赞赏。
解决方法
默认情况下,重新打包目标将用重新打包的工件替换原始工件。对于代表应用的模块来说,这是一种理智的行为,但如果您的模块用作另一个模块的依赖项,则需要为重新打包的模块提供分类器。
这样做的原因是应用程序类打包在 BOOT-INF/classes
中,因此依赖模块无法加载重新打包的 jar 类。
spring docs
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。