这两天特意补了一下文档.
文档: https://vfox.lhan.me/zh-hans/
仓库: https://github.com/version-fox/vfox
目前社区已支持的 SDK:
主要是可以在 Windows(非 WSL)下, 体验到和 asdf 一样的效果. 当然比它要棒哈哈哈哈.
     1 
                    
                    hankli   OP 自己当一楼 
                 | 
            
     2 
                    
                    githmb      2024-02-29 14:23:18 +08:00    牛逼,已 star 
                 | 
            
     3 
                    
                    stimw      2024-02-29 14:27:09 +08:00 via Android 
                    
                    
                 | 
            
     6 
                    
                    hankli   OP  | 
            
     7 
                    
                    crazyweeds      2024-02-29 14:33:14 +08:00 
                    
                    如果有 GUI 的话,感觉还行。如果没有,那么我手动来其实感觉也可以。虽然我知道这个工具可能可以帮我自己下载之类的。 
                 | 
            
     8 
                    
                    hankli   OP @crazyweeds https://github.com/version-fox/vfox/issues/8 一开始是有 GUI 打算的, 但是精力有限, 先做好核心和插件生态 吧 
                 | 
            
     9 
                    
                    twofox      2024-02-29 14:34:08 +08:00    可以,start 一下,晚点试一下 
                 | 
            
     10 
                    
                    w292614191      2024-02-29 14:38:30 +08:00    我还以为是右下角右键菜单 > jdk > 1.8,11,17,选择然后切换呢。 
                敲命令没啥意思  | 
            
     11 
                    
                    hankli   OP @w292614191 你这个想法💡很好啊卧槽!, 这个适合放到 GUI 上实现, 目前没有. 这只是个核心. 
                 | 
            
     12 
                    
                    charlie21      2024-02-29 14:47:27 +08:00 via Android 
                    
                    sdkman 
                 | 
            
     13 
                    
                    smallboy19991231      2024-02-29 14:49:08 +08:00 via iPhone 
                    
                    这个好像很厉害的样子,如果有 gui 版本就舒服了 
                 | 
            
     14 
                    
                    hankli   OP @charlie21 sdkman unix-like 下也不错, 但是 Windows 下需要 WSL. 另外数据源是 sdkman 自己维护的, 而 vfox 插件都是直接解析的官网. 0 成本. 哈哈哈 
                 | 
            
     15 
                    
                    HaiboZ      2024-02-29 14:51:24 +08:00    看了网站介绍就觉得想法很不错,下载试了一下,真的好用👍👍👍,以后切换版本太爽了,再也不用翻文件夹了 
                 | 
            
     16 
                    
                    NeroKamin      2024-02-29 14:56:45 +08:00 via iPhone    有点意思,已 star 
                 | 
            
     17 
                    
                    Incrus      2024-02-29 15:01:04 +08:00 
                    
                    内网没法在线下载不同版本,可以有离线安装包的这种方式安装,然后用 vfox 来切换版本吗? 
                windows 主要是 node  | 
            
     18 
                    
                    hankli   OP @Incrus 不知道我有没有正确理解你的问题, 三种方式吧. 
                1.如果内网有 mirror 的话, 可以直接把 nodejs 插件理的地址换成内网地址. 2.因为 vfox 完全依赖插件来获取数据源的, 没办法直接通过命令导入安装包, 但是可以实现一个插件, 插件里面指定离线安装包的位置, 供 vfox 管理 3.vfox 最终管理的是$HOME/.version-fox/cache 目录下的文件, 另一种方法是直接把安装包丢进去就行了  | 
            
     19 
                    
                    Incrus      2024-02-29 15:11:53 +08:00 
                    
                    1 和 3 可能可行,回头试试。 
                谢谢。  | 
            
     20 
                    
                    wxyrrcj      2024-02-29 15:18:26 +08:00 
                    
                    C:\Users\Administrator>vfox ls 
                All installed sdk versions ├─┬golang │ └──v1.22.0 ├─┬java │ ├──v8 │ └──v21 ├─┬nodejs │ └──v18.19.1 └──python  | 
            
     21 
                    
                    wxyrrcj      2024-02-29 15:19:09 +08:00 
                    
                    其他几个安装成功了  py 这个是哪里的问题呢 
                C:\Users\Administrator>vfox install [email protected] plugin [PreInstall] method error: <string>:141: attempt to call a non-function object stack traceback: <string>:141: in function 'checkIsReleaseVersion' <string>:50: in main chunk [G]: ? C:\Users\Administrator>  | 
            
     22 
                    
                    hankli   OP @wxyrrcj 你安装的不是最新的 0.2.3 吧, py 要求最新版本. 跟这个一个问题看着.https://github.com/version-fox/vfox/issues/49 
                 | 
            
     23 
                    
                    wxyrrcj      2024-02-29 15:23:47 +08:00 
                    
                    @hankli #22  是的 C:\Users\Administrator>vfox -v 
                VersionFox version 0.2.2  | 
            
     25 
                    
                    Dylaan      2024-02-29 15:35:08 +08:00 
                    
                    支持世界上最好的语言嘛 
                 | 
            
     26 
                    
                    hankli   OP  | 
            
     27 
                    
                    w292614191      2024-02-29 16:13:48 +08:00 
                    
                    @hankli #11 哈哈哈哈,快肝吧 
                 | 
            
     28 
                    
                    youknowiam      2024-02-29 16:16:43 +08:00    gentoo 的 eselect ? 
                 | 
            
     29 
                    
                    hankli   OP @youknowiam 头一次听说这个. 刚看了一下 wiki , 发现好像! 研究研究哈哈哈 
                 | 
            
     30 
                    
                    hankli   OP @youknowiam 我艹, 这就是我一开始的想法, 让插件提供能力. 但是当时觉得插件提供的命令如果不规范一下, 用户用起来还得看一下这个模块怎么用,  所以把命令提前了! 变成了 vfox [command] [plugin] 哈哈哈哈 
                 | 
            
     31 
                    
                    RockShake      2024-02-29 16:38:45 +08:00    👍 新环境果断上这个方案,现在的工作环境已经用了不同的工具管理版本,折腾起来太费事,先不动了 
                 | 
            
     32 
                    
                    vishun      2024-02-29 16:46:37 +08:00    合 nvm 的区别是这个可以管理更多的工具吗?只针对 npm 来说,功能和 nvm 一样? 
                 | 
            
     33 
                    
                    unco020511      2024-02-29 16:50:55 +08:00 
                    
                    要是能有 GUI 就好了 
                 | 
            
     34 
                    
                    hankli   OP @vishun 对, 可以管理更多的工具. 另外,nvm 有的功能这个都有, 但是 nvm-win 好像不能支持 shell 会话内有效哈哈哈, 这个还是挺常用的. 自动切换项目版本这个我忘了 nvm 支持不支持了. 
                 | 
            
     35 
                    
                    hankli   OP @unco020511 好几个提的了... 只能先等着了, 哈哈哈.  后面看时间安排吧. 
                 | 
            
     36 
                    
                    FightPig      2024-02-29 16:57:04 +08:00 
                    
                    不错 
                 | 
            
     37 
                    
                    suqiuluck      2024-02-29 17:07:04 +08:00    已 star 
                 | 
            
     38 
                    
                    Radiation      2024-02-29 17:14:28 +08:00 
                    
                    看到好多人都想要 gui 啊,再额外开机启动个 gui 不觉得很麻烦吗?感觉 gui 的话可以弄成可选项,类似 clash 这种,有核心有 gui ,这样大家都有的选。 
                 | 
            
     40 
                    
                    QlanQ      2024-02-29 18:05:04 +08:00 
                    
                    想了半天,我只有 node 一个需要多版本管理,就还是 用 fnm 了 
                 | 
            
     42 
                    
                    kukat      2024-02-29 19:49:10 +08:00 
                    
                    从 asdf 换到 rtx ,rtx 又改名 mise 。。。不想换了 
                 | 
            
     43 
                    
                    wangritian      2024-02-29 19:57:30 +08:00 
                    
                    很棒,蹲一个界面版 
                 | 
            
     44 
                    
                    yidinghe      2024-02-29 20:46:27 +08:00    plugin 的管理和 sdk 的管理容易弄混,建议参考 docker container 和 docker image 这样的子命令设计来区分开。 
                我先是 add 了 java/adoptium-jdk ,然后尝试安装 v21 ,因为下载慢就中途退出了,然后尝试 remove 命令去掉这个 plugin ,得到错误信息 "java/adoptium-jdk not installed"。 那么我想换另一个源,执行 "vfox add java/azul-jdk" 时,也得到错误信息 "plugin java already exists",现在是进退不能了。  | 
            
     45 
                    
                    CLMan      2024-02-29 20:48:05 +08:00    反馈下:下载因为网络问题阻塞,Ctrl+C 后,安装未成功显示成功。 
                我已经通过删除 cache 解决,但程序能做优化更好。  | 
            
     46 
                    
                    xfcy      2024-02-29 20:52:18 +08:00     | 
            
     47 
                    
                    hankli   OP @yidinghe 先手动删除 cache 文件夹,和#45 楼说的一样,明天我看一下,哈哈哈哈 
                 | 
            
     48 
                    
                    Nnq      2024-02-29 22:36:19 +08:00 
                    
                    star 那个图我还以为是动态图 结果是个截屏 
                 | 
            
     49 
                    
                    kalman03      2024-02-29 22:38:38 +08:00 
                    
                    
                 | 
            
     50 
                    
                    phithon      2024-03-01 01:55:29 +08:00    很有想象力,感觉可以支持一下。 
                 | 
            
     51 
                    
                    IdJoel      2024-03-01 03:03:49 +08:00 
                    
                    为啥没有 PHP 😓 
                 | 
            
     52 
                    
                    hafuhafu      2024-03-01 08:22:49 +08:00    挺好用的 
                 | 
            
     53 
                    
                    do9core      2024-03-01 08:53:58 +08:00 
                    
                    看着不错,Windows 能否支持下用 Scoop 或者 Chocolatey 进行 setup 
                 | 
            
     54 
                    
                    luckyc      2024-03-01 09:02:12 +08:00 
                    
                    够呛,  
                vfox use [email protected] -g python --version Python 3.12.2 pip --version 'pip' 不是内部或外部命令,也不是可运行的程序 或批处理文件。  | 
            
     55 
                    
                    luckyc      2024-03-01 09:08:57 +08:00    bug: 
                1. 每次使用 vfox use [email protected] -g, 都会在%PATH%创建一条记录. 会导致很多重复记录??? 2. 每次没有 pip, 因为%PATH%缺少 C:\Users\xx\.version-fox\cache\python\v-3.12.2\python-3.12.2\Scripts  | 
            
     56 
                    
                    jinhan13789991      2024-03-01 09:10:23 +08:00 
                    
                    那么问题来了,已经安装的 sdk 怎么加入管理呢。 
                 | 
            
     57 
                    
                    zliea      2024-03-01 09:13:19 +08:00 
                    
                    gradle 和 openjdk 有规划么? 
                 | 
            
     58 
                    
                    dcdlove      2024-03-01 09:20:06 +08:00 
                    
                    nvm 就够了 
                 | 
            
     59 
                    
                    Corybyte      2024-03-01 09:22:36 +08:00 
                    
                    Linux 可以用吗 
                 | 
            
     60 
                    
                    hankli   OP @l4ever #54 #55  
                1. 是最新版本吗? 我得复现一下, PATH 是去重的. 2. windows 下直接用的 python 提供的 exe 安装器, 我得看一下 exe 安装器的配置, 可能漏掉了导致 pip 没有加上.  | 
            
     61 
                    
                    hankli   OP @zliea #57 可以加上去, 有时间提个 issue 哈哈哈, 当作 good first issue 处理, 哈哈哈哈 
                 | 
            
     63 
                    
                    luckyc      2024-03-01 09:35:03 +08:00 
                    
                    @hankli  
                vfox -v VersionFox version 0.2.3 用 vfox 切换后, 在 vscode 内置的终端不生效? 重启 vsc 都不行. 必须重启电脑才可以. cmd 里面又正常. 非常奇怪. pyenv 不会出现这样的问题.  | 
            
     64 
                    
                    hankli   OP @jinhan13789991 看我#18 楼的回复, 目前只能这样. 后面考虑一下管理已安装的 SDK 
                 | 
            
     66 
                    
                    jspatrick      2024-03-01 09:37:37 +08:00    加油,感觉很有用 
                 | 
            
     67 
                    
                    hankli   OP @yidinghe  
                @CLMan #44 45 > plugin 的管理和 sdk 的管理容易弄混,建议参考 docker container 和 docker image 这样的子命令设计来区分开。 因为我保持简单, vfox 理念就是 SDK 即插件, 插件即 SDK. 所以就没做区分. > 我先是 add 了 java/adoptium-jdk ,然后尝试安装 v21 ,因为下载慢就中途退出了,然后尝试 remove 命令去掉这个 > plugin ,得到错误信息 "java/adoptium-jdk not installed"。 java/adoptium-jdk 只是插件名, 它里面标注了 sdk 名是 java, 所以要删除需要执行 vfox remove java 删除. 这也就是为啥出现 `执行 "vfox add java/azul-jdk" 时,也得到错误信息 "plugin java already exists"`原因. 删除之前, 你们可以通过`vfox ls`查看具体安装的 sdk. 我需要把这个问题在文档上标注一下. 感谢使用和反馈! 🙏  | 
            
     68 
                    
                    auroraccc      2024-03-01 10:55:34 +08:00 
                    
                    挺好的,有对团队协作的支持吗,比如某种项目配置文件啥的 
                 | 
            
     69 
                    
                    hankli   OP @auroraccc  
                有的, vfox use -p 会在当前项目在创建一个.tool-versions 文件 也就是说,只要项目里有这个文件, 配置 vfox 之后, 进入项目目录, vfox 就会自动生效了.  | 
            
     70 
                    
                    halou12      2024-03-01 11:08:24 +08:00    用了一下,有几个 bug 
                1. .tool-versions 文件是在.version-fox 下的。但是执行 vfox current ,结果都是 N/A 3. 如果把.tool-versions 移动到~/目录下,vfox current 正常了,但是每次执行 where python ,.version-fox 下的 python path 都会多一条 2. vscode 终端里,查看 echo $PATH, 所以的 path 会重复 2 遍  | 
            
     71 
                    
                    halou12      2024-03-01 11:10:21 +08:00 
                    
                    另外,我看文档里说,vfox 采用了直接操作环境变量的方式来管理版本,但是 IDEA 里,依然没有显示 .version-fox 下的 python 。这个只能手动选择吗 
                 | 
            
     72 
                    
                    hankli   OP  | 
            
     73 
                    
                    hankli   OP @halou12 这个好像跟 IDEA 有关, pyenv 的好像也是别不了... 我用 vfox 安装了一个 nodejs, idea 就可以是别....哈哈哈哈 
                 | 
            
     74 
                    
                    ifzm      2024-03-01 11:38:30 +08:00    star ,目前大多数管理工具都不支持原生 win ,加油 👋 
                 | 
            
     75 
                    
                    Jaeger      2024-03-01 11:56:11 +08:00    非常棒的工具,all in one 
                 | 
            
     76 
                    
                    MonkeyJon      2024-03-01 13:28:04 +08:00 
                    
                    monkeyjon@a-mini ~ % vfox ls 
                All installed sdk versions └──java 本机存在的 jdk 版本怎么识别的呢,还是说必须要用这个重新下载一遍  | 
            
     77 
                    
                    hankli   OP @MonkeyJon 目前最好的方式, 就是重新下一遍, 这个也花不了多长时间.  记得把之前配置的环境变量清掉. 让 vfox 给你配. 
                 | 
            
     79 
                    
                    Hopetree      2024-03-01 17:22:11 +08:00    start 了,看了一下项目很强,当做学习 go 命令行工具的一个项目 
                 | 
            
     80 
                    
                    Neonyuyang      2024-03-01 17:42:19 +08:00 
                    
                    https://ooo.0x0.ooo/2024/03/01/Oyp4yS.png 
                卸载不了 是我命令写错了吗  | 
            
     81 
                    
                    Neonyuyang      2024-03-01 17:45:22 +08:00 
                    
                    <https://ooo.0x0.ooo/2024/03/01/Oyp4yS.png> 
                卸载不了 是我命令写错了吗  | 
            
     82 
                    
                    hankli   OP @Neonyuyang 啥, 你这啥地址, 打不开 
                 | 
            
     83 
                    
                    LuckyLight      2024-03-01 18:07:19 +08:00    配置文件能符合 XDG Base Directory Specification 就好了 
                 | 
            
     84 
                    
                    sjtulyj      2024-03-01 18:12:43 +08:00    有点意思, 我以前都是写脚本自动切换的 
                 | 
            
     85 
                    
                    sjtulyj      2024-03-01 18:13:13 +08:00 
                    
                    用这种工具, 公司不一定允许, 有时还是得用脚本控制 
                 | 
            
     86 
                    
                    Neonyuyang      2024-03-01 18:20:24 +08:00 
                    
                    @hankli  
                ``` PS C:\Program Files\vfox> vfox un java/adoptium-jdk v21 sdk version is invalid PS C:\Program Files\vfox> vfox list All installed sdk versions └─┬java ├──v21 └──v17 PS C:\Program Files\vfox> vfox uninstall java v21 sdk version is invalid PS C:\Program Files\vfox> ```  | 
            
     87 
                    
                    MAGA2022      2024-03-01 18:21:44 +08:00 
                    
                    asdf 用了很多年了 
                ➜ ~ asdf current bun 1.0.1 /Users/chen/.tool-versions java adoptopenjdk-8.0.352+8 /Users/chen/.tool-versions nodejs 14.19.0 /Users/chen/.tool-versions python 3.9.13 /Users/chen/.tool-versions ruby 3.0.2 /Users/chen/.tool-versions  | 
            
     88 
                    
                    hankli   OP @LuckyLight 确实不太懂这个, 可以参与进来哈哈哈. 我后面看看吧 
                 | 
            
     89 
                    
                    hankli   OP  | 
            
     91 
                    
                    semyin      2024-03-02 15:36:41 +08:00 
                    
                    asdf 是什么 
                 | 
            
     93 
                    
                    gnef      2024-03-03 03:40:57 +08:00 
                    
                    我个人 WIN 环境都是一键脚本搭建, 应该用不上这玩意. 不过 linux 倒可以试试. 另外有些高速插件源可以替换我之前的脚本地址, 还算不错. 
                 | 
            
     94 
                    
                    sankooc      2024-03-04 09:43:29 +08:00    挺好下来试试 
                 | 
            
     95 
                    
                    junmoxiao      2024-03-24 17:10:45 +08:00 
                    
                    坐等对 php 的支持。另外为啥 win 上只支持 3.5 以上呢?不支持 2.7 ? 
                 |