springboot打包的jar,使用java -cp报错:找不到或无法加载主类

这篇具有很好参考价值的文章主要介绍了springboot打包的jar,使用java -cp报错:找不到或无法加载主类。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

问题

springboot打包的jar,使用java -cp报错:找不到或无法加载主类

解决办法

springboot打包的文件与一般java启动方式有一些差别

需要修改为使用以下命令,后面增加类:org.springframework.boot.loader.PropertiesLauncher,如下:
java -cp .:test-0.0.1-SNAPSHOT.jar -Dloader.main=com.aa.common org.springframework.boot.loader.PropertiesLauncher

注释

org.springframework.boot.loader.PropertiesLauncher是Spring Boot中的一个特殊的启动器类。它的主要作用是加载和解析Spring Boot应用程序的属性文件,并在启动应用程序时将这些属性应用到应用程序的上下文中。

具体来说,PropertiesLauncher负责以下几个任务:

  1. 加载应用程序的属性文件:Spring Boot应用程序通常使用application.propertiesapplication.yml文件来配置应用程序的属性。PropertiesLauncher负责加载这些属性文件,使得应用程序可以使用这些配置。

  2. 解析属性文件中的属性:PropertiesLauncher解析属性文件中的键值对,将它们转换为Spring Boot应用程序的属性。这些属性可以在应用程序的上下文中使用,以配置各种组件和行为。

  3. 提供外部属性的支持:除了默认的属性文件外,PropertiesLauncher还支持外部属性的加载。通过使用命令行参数或环境变量,您可以指定额外的属性文件或属性值,这些属性将与应用程序的默认属性合并。

  4. 处理属性值的占位符:在属性文件中,您可以使用${...}占位符来引用其他属性的值。PropertiesLauncher负责解析这些占位符,将其替换为正确的属性值。

总之,org.springframework.boot.loader.PropertiesLauncher是Spring Boot的一个启动器类,用于加载和解析应用程序的属性文件,并将这些属性应用到应用程序的上下文中。它在启动Spring Boot应用程序时起到重要的作用,确保应用程序使用正确的配置和属性。文章来源地址https://www.toymoban.com/news/detail-594432.html

到了这里,关于springboot打包的jar,使用java -cp报错:找不到或无法加载主类的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • rocketMq启动broker报错找不到或无法加载主类 Files\Java\jdk1.8.0_171\lib\dt.jar;C:\Program]

    假如弹出提示框提示‘错误: 找不到或无法加载主类 xxxxxx’。 将\\\"%CLASSPATH%\\\"加上英文双引号,切勿别加中文双引号 同理 将\\\"%CLASSPATH%\\\"加上英文双引号,切勿别加中文双引号 start mqbroker.cmd -n 127.0.0.1:9876 autoCreateTopicEnable=true

    2024年02月12日
    浏览(48)
  • 如何解决使用若依前后端分离打包部署到服务器上后主包无法找到从包中的文件的问题?如何在 Java 代码中访问 jar 包中的资源文件?

    在使用若依前后端分离打包部署到服务器上后,可能会出现主包无法找到从包中的文件的问题,这个问题通常是由于资源文件没有正确地打包到 jar 包中导致的。本文将介绍如何解决这个问题,包括如何在 Java 代码中访问 jar 包中的资源文件、如何将资源文件复制到系统临时目

    2024年02月22日
    浏览(47)
  • Java常见启动命令 -jar、-server、-cp比较

    当前java程序启动主要以 -jar 、 -server 、 -cp 等几个命令启动 jar 程序,其中我们最常用的 java -jar 启动方式,通常我们需要将当前工程所依赖的所有包编译到一个jar包中,随着工程不断迭代,外部依赖越来越多,会导致整个jar包体积变得很大,每次更新部署传输效率就会变得很

    2024年02月09日
    浏览(31)
  • 使用IDEA把Java程序打包成jar

    点击左上角File,选择Project Structure 左侧选中Artifacts,点击右侧的+号   选择JAR-From modules with dependencies 选择你要运行的main方法所在的类,选好了点击OK  Artifacts添加完成后点击右下角OK  在工具栏中找到Build,选择Build Artifacts   刚才创建好的Artifacts,选择Build   在项目的 outartifac

    2024年02月11日
    浏览(29)
  • SpringBoot学习——项目用maven打包成jar包 & windows + Linux平台运行 & Linux安装java & 遇到的问题

    1.maven打包springboot项目,jar包; 2.windows安装java环境,以及运行jar包; 3.Linux安装java环境,以及运行jar包; 4.运行jar包template might not exist报错及解决; Maven 构建生命周期定义了一个项目构建跟发布的过程。 一个典型的 Maven 构建(build)生命周期是由以下几个阶段的序列组成的

    2024年02月16日
    浏览(55)
  • java测试报错:找不到或无法加载主类 的解决方法(简单粗暴)

    当我们在windows系统下安装完jdk时,测试案例HelloWorld;运行java命令时报错:找不到或无法加载主类 如果没有生成.class字节码文件,则需要执行javac编译命令编译源文件。 执行命令 javac H:javatestHelloWorld.java (javac表示jdk内置编译命令;H:javatestHelloWorld.java表示源文件所在路径

    2024年02月09日
    浏览(36)
  • SpringBoot 使用 Maven 打包提示“程序包xxx不存在,找不到符号”错误

    在SpringBoot多模块项目中,如果使用Maven进行包管理,有时候会提示“程序包xxx不存在,找不到符号”错误,为什么会出现这个错误,我们下面先从maven打包的方式进行说起。 maven打包有三种方式 pom、jar、war。在pom.xml 文件中声明的方式分别如下: 以上三种打包方式不同出现在

    2024年02月08日
    浏览(34)
  • 【Linux】使用Jenkins + svn + springboot自动构建jar包并自动打包在服务器上运行

    👨‍🎓 博主简介   🏅云计算领域优质创作者   🏅华为云开发者社区专家博主   🏅阿里云开发者社区专家博主 💊 交流社区: 运维交流社区 欢迎大家的加入! 🐋 希望大家多多支持,我们一起进步!😄 🎉如果文章对你有帮助的话,欢迎 点赞 👍🏻 评论 💬 收藏

    2024年04月26日
    浏览(30)
  • springboot打包时依赖jar和项目jar分开打包;jar包瘦身

    最近感觉项目在部署时时 jar 包传输太慢了; 看了下 jar 包内容,除了项目代码,其余大部分都是依赖 jar ; 平时改动较多的只是项目代码,依赖 jar 改动比较少; 所以就在想能不能分开打包;这样只部署项目代码的改动就快多了; 我的 jdk 版本: 17 springboot 版本: 3.1.2 将依赖

    2024年02月06日
    浏览(41)
  • SpringBoot 将项目打包成 jar 包

    一、项目打包成 jar 包 首先在 pom.xml 文件中导入 Springboot 的 maven 依赖 在项目的生命周期中,package 一下 package 完成以后, target 中会生成一个. jar 包 package 完成后的 jar 包 找到对应的 jar 包路径下, java -jar 打包后的名字即可运行成功; 该 jar 包所在的路径下 cmd java -jar 运行项目

    2024年02月13日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包