双击脚本运行发现环境变量没加载(已解决,但很奇怪)
Tofloor
poster avatar
xflcx1991
deepin
2020-08-18 06:46
Author
对我来说是才遇到,但搜索发现这应该是个老问题了。
原始需求,在 ~/.bashrc 配置好了 JAVA_HOME和 PATH,一个 jar 软件双击是被压缩软件打开了,ok,那我自己写脚本, `java -jar ****.jar`,在终端下运行是正常的。但是如果双击该脚本,选择运行没有反应,于是再次双击脚本选择“在终端中运行”,boom,提示 java 命令找不到,ok,那就是环境变量问题了。

在论坛搜了一下,发现这两个帖子 https://bbs.deepin.org/post/36057 和 https://bbs.deepin.org/post/35286 也有类似的问题。看了以后说是登录式和非登录式的区别,好,那我去 ~/.profile 也加上 JAVA_HOME he  PATH,重启后问题依旧!我确认过了并没有 ~/.bash_profile 或 ~/.bash_login 文件,为什么 deepin 不加载 ~/.profile?

后来我看了 /etc/profile 发现是要读取 /etc/profile.d 文件夹下的 sh 文件,于是我尝试在这个目录下添加一个 sh 文件,用来添加环境变量,重启后好了!

这就奇怪了,问题是解决了,就是要往 /etc/profile.d 下放 sh 文件,但是请问,为何 deepin 开机不加载 ~/.profile?


Reply Favorite View the author
All Replies
avatar
rigoligo
deepin
2020-08-18 06:51
#1
这些常规的“启动前运行”的脚本,deepin桌面环境有好多都不会正常加载。以前我们群里群主测试过几个。希望深度这边能快点改
Reply View the author
avatar
xflcx1991
deepin
2020-08-18 06:56
#2
这里有个 2017 年的帖子,比较老了,可能不适用,https://bbs.deepin.org/post/147762 这里面楼主和官方一些人的争论恰恰之处 ~/.profile 是会登录加载的。那我现在的问题就奇了怪了。

我的 deepin 版本就是目前官网最新版 v20 beta
Reply View the author
avatar
SamLukeYes
deepin
2020-08-18 07:03
#3
是否加载 ~/.profile 应该是 /etc/profile 控制的
Reply View the author