maven - 使用 java -jar 的 Springboot 可执行 jar 错误
问题描述
使用命令/opt/jdk1.8.0_211/bin/java -jar webprx.jar
得到这个错误:Error: Invalid or corrupt jarfile webprx.jar
jar 是用 mvn clean package 和 mvn install 构建的
绒球
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<executable>true</executable>
</configuration>
</plugin>
</plugins>
</build>
<packaging>jar</packaging>
解决方案
删除executable
配置。
从文档来看,这使得它可以被*NIX
系统执行。
通过将启动脚本添加到 jar 中,为 *nix 机器制作一个完全可执行的 jar。
目前,一些工具不接受这种格式,因此您可能并不总是能够使用这种技术。例如, jar -xf 可能无法提取已完全可执行的 jar 或 war。建议您仅在打算直接执行时启用此选项,而不是使用 java -jar 运行它或将其部署到 servlet 容器。
https://docs.spring.io/spring-boot/docs/2.1.5.RELEASE/maven-plugin/repackage-mojo.html
推荐阅读
- python - 在转发期间使用 BaysianConv2d 时出现运行时错误
- google-apps-script - 如何更改单元格值?
- racket - 如何访问球拍中节点的值?
- c# - .NET Web 部件 | Web 部件管理器 | Web 部件区
- asp.net-core - 如何将 github 机密传递给使用 github 操作部署的 asp.net 核心应用程序?
- unsupervised-learning - 使用 SimCLR 搜索无监督预训练的代码
- azure - Azure Graph API - 批准 PIM 请求
- angular - 获取元素的值并使用同一 mat 选择或表 Angular Typescript 中其他对象的 id 将其解析为 mat 选项
- javascript - Discord.js 踢/禁止权限
- python - 尝试使用 Selenium 遍历配置文件列表