当前位置: 首页 > 知识库问答 >
问题:

Spring boot gradle将命令行参数传递给应用程序。所有物

年嘉禧
2023-03-14

我在Gradle中使用Spring Boot,我在Intelij中执行此操作:

10:43:37: Executing external task 'bootRun  -Drun.arguments="--
server.port=6666"'...

但我仍然在日志中看到:

Tomcat已初始化端口:8080(http)

我已经看到了这一点,但它对我不起作用:https://stackoverflow.com/a/37053004/3871754

共有3个答案

闾丘文昌
2023-03-14

Spring Boot Gradle插件仍然没有提供这种现成的功能。但是,即使您不想向Gradle脚本添加额外的配置,也可以使用遵循这些规则中的命名约定的环境变量来解决这个问题(也适用于自定义属性)。

例如,您可以使用以下命令更改端口:

SERVER_PORT=6666 ./gradlew bootRun
司马俊晖
2023-03-14

以下语法适用于我,代码中没有任何更改:

bootRun --args='--server.port=6666'

注:单引号很重要

柯正谊
2023-03-14

在Spring Gradle BootRun任务中使用命令行参数并不容易。在这个Spring Boot问题线程中,有一个关于这个主题的非常有趣的讨论。

今天,您可以通过将所有系统属性传递给bootRun任务来实现这一点,如线程中所述,如下所示。

bootRun {
    systemProperties = System.properties
}

然后您可以简单地使用:

bootRun -Dserver.port=6666

TomcatEmbeddedServletContainer:使用端口初始化的Tomcat:6666(超文本传输协议)

 类似资料:
  • 问题内容: 如何接收文件作为命令行参数? 问题答案: 仅传递文件的路径,在程序内部使用Java File类处理它 这将第一个参数作为文件路径:

  • 问题内容: 我的应用程序有一个JNLP软件包。现在,我需要将命令行参数传递给我的应用程序。如何扩展我的JNLP文件以列出命令行参数? 例如,我需要说和,并且需要在JNLP文件中提及。 问题答案: 请查看元素说明以获取元素的更多详细信息。 所述元素指示JNLP文件被启动应用(而不是小应用程序)。.. 可以通过包含一个或多个嵌套元素来为应用程序指定参数。 例如:

  • 我有一个JNLP软件包用于我的应用程序。现在我需要将命令行参数传递给我的应用程序。如何扩展JNLP文件以列出命令行参数? 例如,我需要说和和是JNLP文件的一部分。

  • 问题内容: 我有一个用Node.js编写的Web服务器,我想使用一个特定的文件夹启动。我不确定如何在JavaScript中访问参数。我正在像这样运行节点: 这是我的服务器代码。Node.js帮助说这是可能的: 如何在JavaScript中访问这些参数?不知何故我无法在网上找到此信息。 问题答案: 参数存储在 以下是有关处理命令行参数的节点文档: 是一个包含命令行参数的数组。第一个元素是’node’

  • 要启动Java程序,我可以传递如下参数: 在gradle命令行中有哪些好的方法可以做到这一点: 这是正在建造的。格雷德尔:

  • 问题内容: 我有一个用Node.js编写的Web服务器,我想使用一个特定的文件夹启动。我不确定如何在JavaScript中访问参数。我正在像这样运行节点: 这是我的服务器代码。Node.js帮助说这是可能的: 如何在JavaScript中访问这些参数?不知何故,我无法在网上找到此信息。 问题答案: 标准方法(无库) 参数存储在 以下是有关处理命令行参数的节点文档: 是一个包含命令行参数的数组。第一