Java 重新打包Spring启动应用程序

Java 重新打包Spring启动应用程序,java,spring-boot,jar,Java,Spring Boot,Jar,你好 我有一个使用http服务器的简单应用程序,如本指南所示: https://spring.io/guides/gs/serving-web-content/ 当我构建并运行它时,它工作得很好 java -jar target/gs-serving-web-content-0.1.0.jar 现在我想重新打包这个jar文件。我有: jar xvf gs-serving-web-content-0.1.0.jar rm gs-serving-web-content-0.1.0.jar ja

你好

我有一个使用http服务器的简单应用程序,如本指南所示:

https://spring.io/guides/gs/serving-web-content/
当我构建并运行它时,它工作得很好

java -jar target/gs-serving-web-content-0.1.0.jar
现在我想重新打包这个jar文件。我有:

jar xvf gs-serving-web-content-0.1.0.jar
rm  gs-serving-web-content-0.1.0.jar
jar cf gs-serving-web-content-0.1.0.jar *
但是当我试着用

java -jar target/gs-serving-web-content-0.1.0.jar
我得到一个错误:

no main manifest attribute, in test.jar
我试着用很多方法来解决它,但找不到一个方法来解决它。 有什么把戏吗

谢谢。

  • 您需要重用清单文件。如果重用清单文件,还将获得正确的入口点(主类/起始类)。选项
    m
    和参数
    META-INF/MANIFEST.MF
    。如果不指定
    m
    选项,您将获得一个新的清单文件,该文件将覆盖现有清单文件
  • 您不需要压缩使用过的库。选项
    0
    。因此,您的最终jar可能比springboot默认情况下的jar更大
jar cfm0 fne-manager-0.0.1-SNAPSHOT.jar META-INF/MANIFEST.MF*

Usage: jar {ctxui}[vfmn0PMe] [jar-file] [manifest-file] [entry-point] [-C dir] files ...
Options:
    -m  include manifest information from specified manifest file
    -0  store only; use no ZIP compression
我不知道你为什么要“重新包装”它


还可以看看

使用Maven或Gradle打包您的项目!非常感谢。