26

在Eclipse中我可以包括像在启动配置虚拟机ARGS或程序ARGS如下:intellij是否支持启动配置中的变量?

-Dsome.system.property=${string.prompt:explanation:default} 

当你运行它,你会得到一个小弹出一串提示显示的说明文字和随时可以使用默认设置,并且它允许您轻松地注入属性并且每次运行应用程序。

我用它很多东西,例如指定我是否想要应用程序的开发或测试实例。您也可以使用${env_var:ENVIRONMENT_VARIABLE_NAME}来获取特定于计算机的配置信息,这对于在开发人员之间共享这些启动配置很有用。

IntelliJ Idea是否支持这个或类似的东西?有没有提供这种功能的插件?

回答

13

IntelliJ没有直接的等价物。为了更容易地在多个开发人员之间共享配置或其他项目设置,可以使用路径变量(设置|路径变量,请参阅帮助以获取更多信息)。要在启动运行配置之前自定义选项,请启用运行配置设置中的“启动前|显示设置”选项。

+3

这看起来相当接近。语法'$ path-variable-name $'选取变量,您可以在设置中更改它们的值。但在启动前,您无法在“显示设置”对话框中更改它们的值。 –

0

我从来没有在使用IntelliJ IDEA的所有年份中看到过类似的东西。

您可以在他们的issue tracker中打开功能请求,也许他们会在将来的版本中实现它。

4

只是为IntelliJ 11.0.2中的机器特定变量做了这个。 设置一个路径变量,即MY_VARIABLE。 在你的运行配置中使用,就像在eclipse中一样:$ {MY_VARIABLE}

+0

应该像'$ {TIME}'这样的变量有效吗?我试图向虚拟机选项添加'$ {TIME}'无济于事。 – Jayen

+0

语法是$ VARIABLE $,如下所述:http://www.jetbrains.com/idea/webhelp/path-variables.html –

0

也许this是你想要的。这是我的项目工作。

例如

launchctl setenv ANDROID_HOME= /usr/myuser/android_sdk/ 
and restart intellij 
7

在2016年版本的IntelliJ至少,你可以使用大括号包围的环境变量语法获取环境变量:

${HOME}/path/to/file 

被适当扩大,但替代语法

$HOME/path/to/file 

确实不是工作。

版本信息:

IntelliJ IDEA 2016.2.2 
Build #IC-162.1628.40, built on August 16, 2016 
JRE: 1.8.0_76-release-b216 amd64 
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o