当前位置: 首页 > 面试题库 >

Spring:从命令行覆盖一个application.property

法和安
2023-03-14
问题内容

我有一个带有默认变量值的application.properties文件。我希望能够在运行时更改其中之一mvn spring- boot:run。我找到了如何更改整个文件的方法,但是我只想更改其中一个或两个属性。


问题答案:

您可以将各个属性作为命令行参数传递。例如,如果要设置server.port,则在启动可执行jar时可以执行以下操作:

java -jar your-app.jar --server.port=8081

另外,如果您使用的mvn spring-boot:run是Spring Boot 2.x,则:

mvn spring-boot:run -Dspring-boot.run.arguments="--server.port=8081"

或者,如果您使用的是Spring Boot 1.x:

mvn spring-boot:run -Drun.arguments="--server.port=8081"

您还可以spring-boot:run在应用程序中配置参数,pom.xml这样就不必每次都在命令行上指定它们:

<plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
    <configuration>
        <arguments>
            <argument>--server.port=8085</argument>
        </arguments>
    </configuration>
</plugin>


 类似资料:
  • 问题内容: 我目前有量角器安装程序,可以在我们的集成服务器上运行。在protractor.conf.js文件中,我具有以下内容: 从命令行本地运行时,我想覆盖此设置。我尝试了以下失败的尝试 问题: 从命令行本地运行时,如何切换为仅使用chrome的单个实例? 问题答案: 这是个问题。 根据源代码,命令行参数是的别名。 根据文档: 换句话说,由于已指定,因此将被忽略。 您可以尝试从命令行重置: 作为

  • 我有个身材。我的android应用程序中的gradle文件具有以下设置: My AndroidManifest.xml不包含版本代码,也不包含 versionName。 现在我想在Jenkins上构建这个应用程序,并将build_NUMBER作为应用程序的版本代码传递,以便每个构建都有更高的版本。 所以在工作中,我接到了一个电话: 当我使用“versionCode”重命名“app release.

  • 我有一个spring boot应用程序。我想覆盖应用程序中配置的一些属性。执行jar时使用yml。 我的代码如下: Application.java是 应用程序。yml公司 名称:nameInApplication 当我像这样执行命令时: java-jar应用程序。jar—name=nameInCommand 这不是工作 第二个命令也不起作用: javaapp.jar 但是如果applicatio

  • 问题内容: 我正在寻找一种巧妙的方法来覆盖bootstrap类路径中的类。原因是OpenJDK7错误http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7104625 该错误的解决方法是对的一个微小更改(请参阅链接的邮件列表帖子)。因此,我想知道是否有一种简便的方法可以在类路径上重写此受影响的类,而不必重新打包/重建rt.jar(这样,在下次自动更

  • 问题内容: 在Unix上,我可以使用\r(回车\b键)或(退格键)覆盖Shell中的当前行(在已经可见的文本上打印)。 我可以通过Python脚本在Windows命令行中实现相同的效果吗? 我尝试了curses模块,但Windows上似乎不可用。 问题答案: 是:

  • 我的意图是在spring boot应用程序中有两个概要文件—开发和生产概要文件。开发概要文件只是为了覆盖生产概要文件的一些变量(比如内存中的数据库,而不是云中的数据库)。由于我预计将来会对生产概要进行一些更改,所以在开发概要中复制变量似乎不是一个解决方案。 因此,在Spring参考中,我读到应该只从引用的配置文件中添加属性。 有时,将特定于概要文件的属性添加到活动概要文件中而不是替换它们是很有用的