带有 .bashrc 环境的 .desktop 文件

带有 .bashrc 环境的 .desktop 文件

我正在使用 IntelliJ IDEA,它使用了 .bashrc 脚本中定义的一些环境变量。

如果我从终端运行它的 shell 脚本,一切都会正常工作,但如果我创建一个 .desktop 文件以从启动器运行它,那么它将在没有 .bashrc 环境的情况下加载。

我也尝试使用“使用终端运行”选项,但没有帮助。有办法做到这些吗?

桌面文件的内容:

[Desktop Entry]
Version=1.0
Type=Application
Name=IntelliJ IDEA
Icon=/home/gmarom/bin/idea-IU-135.1230/bin/idea.png
Exec="/home/gmarom/bin/idea-IU-135.1230/bin/idea.sh" %f
Comment=Develop with pleasure!
Categories=Development;IDE;
Terminal=false
StartupWMClass=jetbrains-idea

答案1

从启动器运行时,idea.sh 脚本使用非迭代 shell 启动。请.bashrc确保在之前导出环境变量

# If not running interactively, don't do anything
case $- in
    *i*) ;;
      *) return;;
esac

或者将环境变量导出到~/.bash_profile

答案2

对我来说,将环境变量移动到.profile不起作用。相反,我从我的代码中删除了 @oliman 建议的代码.bashrc,然后将我的 IntelliJ IDEA 启动器从以下内容更改为:

"/opt/idea-IU-163.12024.16/bin/idea.sh" %f

更改为:

bash -c "source ~/.bashrc && /opt/idea-IU-163.12024.16/bin/idea.sh %f"

答案3

对我来说,解决方法是将环境变量从 .bashrc 移至 .profile 并重新登录。Komodo Edit 现在从 PATH 中获取 perlbrewed Perl。

https://help.ubuntu.com/community/EnvironmentVariables非常有帮助。

相关内容