关于jenv配置中添加不存在的.jenv/bin目录到PATH的作用疑问
关于jenv配置中添加不存在的.jenv/bin目录到PATH的作用疑问
嘿,这个问题我刚接触jenv的时候也纠结过——明明~/.jenv/bin这个目录压根不存在,为啥官方文档还要让把它加到PATH里?其实这里面是有几个很实在的原因的:
- 兼容不同的安装方式:jenv的官方文档是面向所有用户的,不同人用的安装渠道不一样,目录结构也会有差别。比如你要是通过源码克隆手动装的jenv,后续大概率需要自己建
~/.jenv/bin来放插件或者辅助脚本;但如果是用Homebrew这类包管理器装的,jenv的核心命令可能已经在系统默认的PATH路径里了。文档保留这一步,就是为了能覆盖所有安装场景,不用分情况写不同的教程。 - 后续操作会自动补全这个目录:当你执行完
eval "$(jenv init -)"并重启终端,或者第一次安装jenv插件、运行某些初始化命令时,这个bin目录可能会自动被创建出来,用来放插件的可执行文件或者临时运行脚本。而且就算它暂时不存在,把它加入PATH也完全不会有副作用——系统在查找命令的时候,会自动跳过不存在的目录,根本不会影响你的终端正常使用。 - 给自定义扩展留的位置:这个目录其实是官方给你留的自定义空间。比如你要是自己写了个和Java版本管理相关的小脚本,直接丢进
~/.jenv/bin里,因为它已经在PATH里了,你在终端里直接打脚本名字就能运行,不用每次都输入全路径,特别方便。
另外你也可以检查下自己的jenv安装路径——如果是包管理器装的,jenv的主命令可能在/usr/local/bin或者类似的系统路径里,这时候~/.jenv/bin确实是空的甚至不存在,但这一步配置完全是安全的,放心就行。
内容来源于stack exchange
相关产品推荐
相关产品推荐

