首页 > 解决方案 > 使用 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>

标签: mavenspring-bootjava-8

解决方案


删除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


推荐阅读