MonoDevelop调试时读取环境变量

Read environment variable when debugging in MonoDevelop

通过System.Environment.GetEnvironmentVariable("VAR_NAME")

检索环境变量

在 bash 中使用 export VAR_NAME=123 无效(以上命令 returns 无效)。将 System.EnvironmentVariableTarget 设置为用户、机器或进程都不起作用。

将 shell 脚本放入 /etc/profile.d/settings.sh 并使用 export VAR_NAME=123 需要重新启动,这是不可接受的。我一直无法找到在不重新启动的情况下加载更改的方法。使用 source /etc/profile.d/settings.sh 无效。我也没有测试重启后它是否真的有效,因为我不会重启:)

通过 MonoDevelop 导出变量可行,但不是一个选项,因为设置是跨项目使用的。我无法为解决方案设置环境变量。

一定有更好的方法。有什么线索吗?

Edit1:当 运行 bash 中的应用程序时,它可以正常工作。现在我无法在 MonoDevelop 中调试任何东西,所以我想找到一种方法让 MonoDevelop 包含所需的变量,而无需在每个项目中都设置它们。

Edit2:通过转到 Run -> Run With -> Custom Parameters 并添加环境变量,在 MonoDevelop 中非常接近。尽管在调试时它们仍然没有应用。

Edit3:使用 运行 With -> Custom Parameters 是一个死胡同,因为它不支持 运行 MonoDevelop 中的多个项目。如果有多个启动项目,它根本不允许添加任何自定义参数。

从 bash 执行 MonoDevelop。这样调试时就可以使用环境变量了。