首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Spring Boot Application java -jar --属性重写不起作用

Spring Boot是一个用于简化Spring应用程序开发的框架。它提供了一种快速构建独立、可执行的、生产级的Spring应用程序的方式。Spring Boot应用程序可以打包为可执行的JAR文件,并通过java -jar命令来运行。

在使用java -jar命令运行Spring Boot应用程序时,可以通过命令行参数或配置文件来重写应用程序的属性。但是,有时候使用java -jar命令行参数重写属性可能不起作用的原因可能有以下几点:

  1. 属性名称错误:请确保你正确地指定了要重写的属性名称。属性名称应该与应用程序中的属性名称一致。
  2. 属性值格式错误:请确保你正确地指定了要重写的属性值,并且符合属性的格式要求。例如,如果属性是一个整数类型,你必须提供一个整数值。
  3. 配置文件位置错误:如果你使用了配置文件来重写属性,确保配置文件位于正确的位置。默认情况下,Spring Boot会在classpath下查找名为application.properties或application.yml的配置文件。
  4. 配置文件格式错误:如果你使用了配置文件来重写属性,请确保配置文件的格式正确。例如,如果你使用的是application.properties文件,每个属性应该以key=value的形式进行配置。

如果你仍然无法解决属性重写不起作用的问题,可以尝试以下方法:

  1. 检查应用程序代码:确保应用程序代码中没有硬编码的属性值,以允许属性被重写。
  2. 检查依赖项:确保你使用的Spring Boot版本与你的应用程序代码兼容,并且没有任何冲突的依赖项。
  3. 检查日志:查看应用程序的日志文件,以了解是否有任何与属性重写相关的错误或警告信息。

总结起来,当使用java -jar命令运行Spring Boot应用程序时,属性重写可能不起作用的原因可能是属性名称错误、属性值格式错误、配置文件位置错误、配置文件格式错误等。如果遇到问题,可以通过检查应用程序代码、依赖项和日志来解决。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

java jar 没有主清单属性_Spring Boot jar中没有主清单属性的解决方法「建议收藏」

使用Spring Boot微服务搭建框架,在eclipse和Idea下能正常运行,但是在打成jar包部署或者直接使用java -jar命令的时候,提示了xxxxxx.jar中没有主清单属性: D:\hu-git...\spring-xxx-xxx\target>java -jar spring-cloud-eureka-0.0.1-SNAPS HOT.jar spring-xxx-xxx-0.0.1-SNAPSHOT.jar...Spring-Boot-Lib表示依赖的jar包存储的位置 这些值都是SpringBoot打包插件会默认生成的,如果没有这些属性,SpringBoot程序自然不能运行,就会报错:jar中没有主清单属性...org.springframework.boot spring-boot-maven-plugin 在运行mvn install的时候,自动生成这些主清单属性,运行java -jar xxx.jar时会根据主清单属性找到启动类...到此这篇关于Spring Boot jar中没有主清单属性的解决的文章就介绍到这了 版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。

2.7K30

Spring Boot从零入门7_最新配置文件配置及优先级详细介绍

Spring Boot对参数的重写(覆盖)有一个顺序,这是我们需要注意的,这里概况如下: 当使用了Devtools时,$HOME/.config/spring-boot文件夹中的Devtools全局设置属性...又如对于一次性测试,可以使用特定的命令行开关启动(例如,java -jar app.jar --name="Spring")也可以覆盖name属性值。...以下示例演示如何指定其他文件名: $ java -jar myproject.jar --spring.config.name=myConfig 下面的示例演示如何指定两个位置: $ java -jar...=dev 3.6.4 其他方式 Java命令行设定方式: # 方式一 $ java -jar app.jar --spring.profiles.active=dev # 方式二 $ java -jar...配置文件这一章细节内容比较多,但是我们把握几个点就好了,这个总结下: Spring Boot为我们提供了大量的默认配置,我们可以重写这些配置参数的值,并提供了多种方式去重写(覆盖),且重写方式之间是有优先级的

75320

Spring Boot 最佳实践(二)集成Jsp与生产环境部署

.jsp 更多application.properties设置信息,查看官方文档:https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle...2.入口类继承SpringBootServletInitializer重写configure方法 如果要进行生产环境部署,需要单独配置一下Spring Boot 的入口类,需要继承SpringBootServletInitializer...类,重写configure方法,因为默认情况外部Tomcat不能读取到Spring Boot 入口类的main方法启动程序加载,使用需要继承,代码如下: package com.hellospringboot.hellospringboot...--排除内置tomcat jar包--> org.springframework.boot spring-boot-starter-tomcat...jarjava application archive)java应用程序库,通常为开发引用的通用类 war(web application archive)web应用程序 所以从jar和war的区别来看

1.7K50

SpringBoot - 探究Spring Boot应用是如何通过java -jar 启动的

---- Pre 大家开发的基于Spring Boot 的应用 ,jar形式, 发布的时候,绝大部分都是使用java -jar 启动。...官方文档中,只提到过Main-Class ,并没有提到Start-Class; Start-Class的值是com.artisan.spring.Application,这是我们的java代码中的唯一类...所以问题就来了:理论上看,执行java -jar命令时JarLauncher类会被执行,但实际上是com.artisan.spring.Application被执行了,这其中发生了什么呢?why?...---- 打包插件 事实上,Java没有提供任何标准的方式来加载嵌套的jar文件 (jar中包含jar ,即Spring Boot 中的fat jarSpring Boot 默认的打包插件如下:...通过spring-boot-plugin 生成了MANIFEST.MF , main-class 指定运行java -jar的主程序把依赖的jar文件 打包在fat jar. ?

1.4K30

一线开发大牛带你初步了解如何使用SpringBoot搭建框架

其实,Spring Boot默认集成了Tomcat,因此我们可以只编译成jar包,通过Java命令启动应用,大多数Spring Boot应用程序只需要很少的Spring 配置。...使用内置Tomcat发布jar包 由于Spring Boot内置了Tomcat,我们可以将工程打包成jar ,通过Java命令运行我们的Web工程,具体步骤如下。...(3)将打包的内容上传到服务器中,运行命令: java -jar api.jar 这样就能启动一个Spring Boot应用。前面提到,可以通过命令参数来设置不同环境或者动态设置参数,那么如何设置呢?...下面以设置环境为例,输入命令: java -jar api.jar --spring.profiles.active=dev 应用启动时,就会拉取 application-dev.yml 内的配置信息。...如果你想改变任何属性值,在--后面加上相应的属性名和要改变的属性值即可。 打包成war包发布 除了编译成jar包发布外,Spring Boot也支持编译成war包部署到Tomcat。

65720

Spring Boot 中文参考指南

您创建的Spring Boot 应用程序,可以通过java -jar 或者 传统的war包方式启动,另外还提供了一个运行spring scripts的命令行工具。...对于一次性测试,您可以使用特定的命令行开关(例如,java -jar app.jar --name="Spring")启动。 env和configprops端点可用于确定属性具有特定值的原因。...test"}}' java -jar myapp.jar 在前面的示例中,您最终在 Spring 的Environment中获取my.name=test。...同样的 JSON 也可以作为系统属性提供: $ java -Dspring.application.json='{"my":{"name":"test"}}' -jar myapp.jar 或者您可以使用命令行参数提供...JSON: $ java -jar myapp.jar --spring.application.json='{"my":{"name":"test"}}' 如果要部署到经典应用程序服务器,您还可以使用名为

3.9K10

(最新 9000 字 )Spring Boot 配置特性解析

":"xxx"}}',这种加载会将这个数据加到Spring Environment中,我们可以获得一个persion.name 的属性,值为xxx 使用System属性加载 java -Dspring.application.json...='{"persion":{"name":"xxx"}}' -jar app.jar,这种加载方式会将spring.application.json属性的值当做一个String来加载,不会解析。...app.jar --name="Spring" 在来覆盖上一个配置 (当前name获取的话是 SpringSpring Boot 配置文件也支持通配符的方式来加载,比如使用 spring.config.additional-location...举例说明: //修改我的配置文件叫myproject java -jar myproject.jar --spring.config.name=myproject //换一个地方来加载我得配置文件...java -jar myproject.jar --spring.config.location=classpath:/default.properties,classpath:/override.properties

55220

SpringBoot 之基础学习篇.

Spring Boot 简化了基于Spring的应用开发,为Spring平台及第三方库提供了开箱即用的设置,你只需要“run”就能创建一个独立的,产品级的 Spring 应用。     ...Spring Boot 每次发布都关联一个 Spring 框架的基础版本,所以强烈建议你不要自己指定Spring版本。...二、spring-boot-devtools 开发者工具     spring-boot-devtools 是 SpringBoot 中内置的一个开发者工具 ,用于自重启,功能当然没有 Jrebel 那么强大...-- 1、在运行一个完整的,打包过的应用时(Java -jar),会禁用开发者工具。...原来的 application.yml 中的 @Value 属性全获取不到了,我猜想是不是 Bean 覆盖导致的,我试着手动把 application.yml 和 my.yml 都加载进 PropertySourcesPlaceholderConfigurer

1.4K30
领券