【问题标题】:Intellij IDEA: run/debug java application with a set of environment variablesIntellij IDEA:使用一组环境变量运行/调试 java 应用程序
【发布时间】:2017-02-07 13:38:15
【问题描述】:

我的 java 应用程序使用环境变量 (System.getenv),而这组变量很大,并且定义在如下文件中:

export VAR1="VAL1"
...
export VAR100500="VAL1500"

当我从命令行启动应用程序时,我使用这样的东西:

source ../.config/.secret-secret && java  -jar build/libs/app-name.jar

并且值在启动之前被导出(实际上,source 命令每个会话只能执行一次,因为值被导出)

但是当我从 IDEA 启动应用程序时,这些值不会导出到运行环境。

那么,问题来了:如何将一组环境变量导出到 IDEA 中的应用程序启动环境中?

所以,我已经尝试过:

  • 运行/调试配置 -> 启动前 我启动了一个 shell 导出这些变量的脚本(我使用相同的脚本来运行 命令行中的应用程序)。脚本成功执行,但看起来 就像脚本是在不同的环境中执行的 应用程序本身,因此值被导出(并打印到 IDEA 运行 控制台),但应用程序仍然无法从中读取它们 System.getenv

  • 我不能轻易使用运行/调试配置 -> 环境变量,因为有很多变量需要手动设置,而且不时更改。

  • 使用这些变量运行整个 IDEA 是不够的,因为正如我上面提到的,这些值经常更改,并且几乎每次启动都应该重新读取。

【问题讨论】:

    标签: java debugging intellij-idea environment-variables


    【解决方案1】:

    我可以告诉你,直接编辑workspace.xml文件(存储运行配置中输入的环境变量的地方)是行不通的,所以不要费心去尝试。

    我认为您将不得不编写一个插件来解析您的脚本并更新运行配置。我自己还没有写一个插件来做这个,所以不能给你一个更完整的答案。您可以在文档here中查看相关插件

    【讨论】:

      猜你喜欢
      • 2016-03-15
      • 2022-11-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-24
      • 1970-01-01
      • 2014-06-28
      • 2017-12-04
      相关资源
      最近更新 更多