2016-09-29 274 views
0

我的Java应用程序使用环境变量(System.getenv),这组变量较大,在文件中这样定义:IntelliJ IDEA的:用一组环境变量的运行/调试Java应用程序

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

当我启动命令行应用程序,我使用这样的事情:

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

和发射前的权值远销(实际上source命令可每次会话只执行一次,因为值远销)

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

所以,问题是:如何能在我IDEA一组环境变量导出到应用程序启动环境?

所以,我已经试过不已:

  • 运行/调试配置 - >启动之前,我开始一个shell脚本 其中出口这些变量(我用同样的脚本来运行 来自命令行的应用程序)。脚本成功执行,但像脚本在不同的环境从 应用程序本身执行看起来 ,所以值会被导出(打印到IDEA运行 控制台),但应用程序仍无法从 System.getenv

  • 阅读
  • 我不能轻易使用运行/调试配置 - >环境变量,因为有很多变数手动设置,还他们是从时间改为时间。

  • 这是不够的,与这些变量运行整个的想法,因为,正如我上面提到的,值经常改变,应重新阅读几乎每推出。

回答

0

我可以告诉你,编辑workspace.xml文件(这是在运行配置中输入环境变量的存储位置)直接不起作用,所以也懒得想这一点。

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

相关问题