前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >(Amazing!) 通过 vfox 安装在 Windows 上管理多个 Erlang/OTP 和 Elixir 的版本

(Amazing!) 通过 vfox 安装在 Windows 上管理多个 Erlang/OTP 和 Elixir 的版本

作者头像
Cloud-Cloudys
发布于 2024-06-19 05:37:09
发布于 2024-06-19 05:37:09
15700
代码可运行
举报
运行总次数:0
代码可运行

大概一个多月前, 我写了篇关于如何使用跨平台版本管理工具 vfox 在 Linux 系统下安装管理多个 Erlang/OTP 版本的文章 -> 通过 vfox 安装管理多版本 Erlang 和 Elixir. 文章使用的示范操作系统是 Ubuntu 20.04 Linux 操作系统.

最近 vfox-erlangvfox-elixir 插件的最新版本已经支持了在 Windows 平台下安装管理多个 Erlang/OTP 和 Elixir 的版本. 且已经通过了 End to End 测试 -> Testing.

本篇文章将会以 Windows 10 操作系统为例, 教你如何在 Windows 平台安装和管理多个 Erlang/OTP 和 Elixir 版本.

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
> Get-ComputerInfo
WindowsBuildLabEx                                       : 22621.1.amd64fre.ni_release.220506-1250
WindowsCurrentVersion                                   : 6.3
WindowsInstallationType                                 : Client
WindowsProductName                                      : Windows 10 Pro
......

1、安装 vfox

vfox (version-fox) 是最近比较热门的一个跨平台通用版本管理工具, 使用 Go 语言进行编写, 插件机制使用了 Lua 去实现扩展性. 目前 vfox 已经支持管理大多数主流编程语言的版本, 生态还算强大. 在这里你可以看到目前 vfox 所支持管理的编程语言版本和工具 -> vfox-Available Plugins.

请确安装 0.5.3 及以上版本的 vfox, 否则 vfox-erlangvfox-elixir 将无法正常工作. 在这里我们通过 winget 安装 vfox:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
> winget install vfox
.......

❯ vfox -version
vfox version 0.5.3

为了能让 vfox 找到已经安装的 Elixir 和 Erlang 版本, 需要将 vfox 默认挂载到 powershell 中:

打开 PowerShell 配置文件:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
New-Item -Type File -Path $PROFILE # 无需在意 `文件已存在` 错误

# 如果它提示未能找到路径, 那么你需要强制创建 profile. 添加 "-Force" 选项. 
# New-Item -Type File -Path $PROFILE –Force

Invoke-Item $PROFILE # 打开 profile

将下面一行添加到你的 $PROFILE 文件末尾并保存:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Invoke-Expression "$(vfox activate pwsh)"

如果powershell提示: 在此系统上禁止运行脚本, 那么请你以管理员身份重新运行powershell输入如下命令

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned
# 之后输入Y, 按回车
y

你也可以参考官方文档安装 vfox -> https://vfox.lhan.me/guides/quick-start.html. 安装好 vfox 之后, 我们再安装下版本管理插件:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 添加 vfox-erlang 插件
vfox add erlang
# 添加 vfox-elixir 插件
vfox add elixir

安装完成后就可以使用这两个 vfox 插件 vfox-erlangvfox-elixir 在 Windows 平台去安装管理多个 Erlang 和 Elixir 的版本了.

2、通过 vfox-erlang 插件安装 Erlang/OTP

因为 Elixir 依赖于 Erlang/OTP, 所以在安装 Elixir 之前, 我们需要先安装下 Erlang/OTP. 如果你已经通过其他方式安装了 Erlang/OTP, 请确保后续通过 vfox-elixir 安装的 Elixir 版本与它是兼容的, 可以查看 Elixir 官方文档说明去确认这一点 between-elixir-and-erlang-otp.

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 通过 vfox search 找到你想要安装的版本
❯ vfox search erlang
Please select a version of erlang [type to search]: 
->  v25.0.4
   v24.3.4.16
   v24.1.3
   v24.0
   v24.3
   v24.3.2
   v25.2
   v27.0-rc2
   v24.3.4.1
Press ↑/↓ to select and press ←/→ to page, and press Enter to confirm

# 当然你也可以指定安装一个版本, 比如
vfox install [email protected]

理论上, 你可以安装任何一个出现在 https://github.com/erlang/otp/releases 中包含 exe 文件的发行版本. 当你看到如下信息, 就表明安装完成了.

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
compile info.......
...
Install [email protected] success! 
Please use vfox use [email protected] to use it.

我们使用 vfox 切换下到刚才安装好的 Erlang/OTP 版本来验证下安装是否成功:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
❯ vfox use -g [email protected]
Now using [email protected].
❯ erl
Erlang/OTP 26 [erts-14.2.2] [source] [64-bit] [smp:16:16] [ds:16:16:10] [async-threads:1] [jit:ns]

Eshell V14.2.2 (press Ctrl+G to abort, type help(). for help)
1> 

如果能正确唤醒 REPL (Read-Eval-Print Loop) 交互式命令行, 那么安装就好啦. 接下来开始安装 Elixir 吧

3、 通过 vfox-elixir 插件安装 Elixir

在开始安装指定的 Elixir 版本之前, 请确保当前安装的 shell 能找到已经安装好 Erlang/OTP 版本相关工具链

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 切换 Erlang/OTP 版本
vfox use -g [email protected]

# 安装一个与 Erlang/OTP 版本兼容的 Elixir 版本
> vfox search elixir
Please select a version of elixir to install [type to search]:
->  v1.16.2-elixir-otp-26
   v1.16.2-elixir-otp-25
   v1.16.2-elixir-otp-24
   v1.16.1-elixir-otp-26
   v1.16.1-elixir-otp-25
   v1.16.1-elixir-otp-24
   v1.16.0-rc.1-elixir-otp-26
   v1.16.0-rc.1-elixir-otp-25
   v1.16.0-rc.1-elixir-otp-24
   v1.16.0-rc.0-elixir-otp-26
   v1.16.0-rc.0-elixir-otp-25
   v1.16.0-rc.0-elixir-otp-24
   v1.16.0-elixir-otp-26
   v1.16.0-elixir-otp-25
   v1.16.0-elixir-otp-24
   v1.15.7-elixir-otp-26
   v1.15.7-elixir-otp-25
   v1.15.7-elixir-otp-24
   v1.15.6-elixir-otp-26
   v1.15.6-elixir-otp-25
Press ↑/↓ to select and press ←/→ to page, and press Enter to confirm

# 比如
vfox install [email protected]
.....
.....
Install [email protected] success!
Please use vfox use [email protected] to use it.

当你看到形如 Install [email protected] success! Please use vfox use [email protected] to use it. 相关信息, 就代表安装已经完成了, 接下来验证下可用性:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
❯ vfox use -g [email protected]
Now using [email protected].
> iex.bat
Erlang/OTP 26 [erts-14.2.5] [source] [64-bit] [smp:16:16] [ds:16:16:10] [async-threads:1] [jit:ns]                                                                                                                                              Interactive Elixir (1.16.1) - press Ctrl+C to exit (type h() ENTER for help)
iex(1)>

Elixir 的 REPL (Read-Eval-Print Loop) 交互式命令行能正常打开的话, 那么安装时成功且可用的.

最后

vfox 的两个安装管理 Erlang/OTP 和 Elixir 版本的插件同时也支持在 Uinx-like (Linux & Darwin MacOS) 系统下管理多个版本. 你可以查看这个文档去了解更多信息: https://github.com/version-fox/vfox-elixir. 全平台操作系统支持~

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-6-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
通过 vfox 安装管理多版本 Erlang 和 Elixir
vfox (version-fox) 是最近比较热门的一个通用版本管理工具,使用 Go 语言进行编写,插件机制使用了 Lua 去实现扩展性. 目前 vfox 已经支持管理大多数主流编程语言的版本,生态还算强大。在这里你可以看到目前 vfox 所支持管理的编程语言版本和工具 -> vfox-Available Plugins
Cloud-Cloudys
2024/04/28
2220
通过 vfox 安装管理多版本 Erlang 和 Elixir
使用 vfox-erlang 安装管理多个 Erlang/OTP 版本
vfox (version fox) 是一款跨平台、可拓展的通用版本管理器. 支持原生 Windows 以及 Unix-like 系统! 通过它, 可以快速安装和切换开发环境的软件版本. 最近给 vfox 水了几个插件, 其中就有管理多个 Erlang/OTP 版本的, 很喜欢他的插件管理机制. 之前也有使用过类似的 asdf 插件, 不过 asdf 之前的使用体验不怎么好, vfox 现在支持的插件已经非常之多了, 已经可以管理大多数语言的版本.
Cloud-Cloudys
2024/04/26
1730
使用 vfox-erlang 安装管理多个 Erlang/OTP 版本
the-solution-of-elixir-continuous-runtime-system-code-coverage-collection
Code coverage is an effective means to assist software engineers in verifying code quality. The runtime environment’s ability to collect code coverage fully combines black and white box testing capabilities and greatly increases engineers’ confidence in software quality. This article introduces a solution for code coverage collection in the Elixir runtime environment, and provides an in-depth insight into its internal principles.
Cloud-Cloudys
2023/10/21
2030
the-solution-of-elixir-continuous-runtime-system-code-coverage-collection
CentOS8 安装 erlang 和 RabbitMQ
最近正好用到了消息队列中的 RabbitMQ ,今天就先来个前味菜,总结一下它在 centos 内的安装。
阿Q说代码
2022/04/07
7370
CentOS8 安装 erlang 和 RabbitMQ
如何在Ubuntu 18.04上安装Elixir和Phoenix Framework
本教程将向您展示如何在Ubuntu 18.04服务器实例上安装Elixir和Phoenix frameworks以进行开发。
星哥玩云
2022/07/27
1.5K0
如何在Ubuntu 18.04上安装Elixir和Phoenix Framework
Flutter版本控制fvm
安装fvm后,考虑设置环境变量 FVM_HOME 或 FVM_GIT_CACHE,否则默认安装 flutter SDK 缓存路径为 ~/fvm/versions;
徐建国
2021/08/25
2.3K0
Elixir 连续运行时代码覆盖率采集方案
作为 SET 和 SWE, 我们经常需要编写单元测试或集成测试用例来验证系统/应用的正确性, 但同时我们也常会质疑我们的测试是否充分了. 这时测试覆盖率是可以辅助用来衡量我们测试充分程度的一种手段, 增强发布成功率与信心, 同时给了我们更多可思考的视角. 值的注意的是代码覆盖率高不能说明代码质量高, 但是反过来看, 代码覆盖率低, 代码质量不会高到哪里去.
Cloud-Cloudys
2023/10/21
4190
Elixir 连续运行时代码覆盖率采集方案
04-基于CentOS7安装RabbitMQ3.10.7
我实在是找不到这么老的版本了, 直接用最新版本的, 按照道理来说, 新版本是兼容老版本的
彼岸舞
2022/10/06
7020
04-基于CentOS7安装RabbitMQ3.10.7
Linux快速安装Erlang和RabbitMQ单机版
安装Erlang之前需要很多第三方的依赖,所以先检查一下是否已经安装好了,每个系统都不一样
SmileNicky
2023/05/26
1K0
Linux快速安装Erlang和RabbitMQ单机版
记一次RabbitMQ(3.8版本)在liunx下安装
需求背景 所有脱离业务场景的技术讨论都是耍流氓 之前的开源项目做前端基建的一部分正好需要做日志监控与埋点juejin.im/post/5e880b… 市面上也有开源监控日志的项目例如github.com/getsentry/s… 个人的诉求想管理git发送钉钉还有支持并发场景,要考虑异步,削峰,解耦,有什么比用消息队列自己做一个更合适呢 其实在选择rabbitmq时自己也是实验态度,还好是自己的开源项目 基于以上的一些原因就决定自己开发一个日志监控与埋点系统 实现原理 在上线代码中加入sdk捕获异常发送到服
吴文周
2020/07/21
8540
Go每日一库之160:gvm(Go版本管理)
接下来为了使gvm生效,需要执行一下上面提示的source /Users/admin/.gvm/scripts/gvm命令即可,执行结束就可以在新终端使用gvm来切换控制go的版本了。
luckpunk
2023/10/02
5510
windows rabbitmq安装
windows rabbitmq安装 1.环境变量,关键是rabbitmq_server需要与erlang版本对应,否则无法使用。
oktokeep
2024/10/09
1250
windows rabbitmq安装
RabbitMQ 部署记录
https://www.rabbitmq.com/which-erlang.html
HaydenGuo
2019/12/12
7510
RabbitMQ 部署记录
RabbitMQ的安装及集群搭建方法
1 安装erlang 下载地址:http://www.erlang.org/downloads 博主这里采用的是otp_src_19.1.tar.gz (200MB+)
我是李超人
2020/08/21
1.5K0
RabbitMQ Linux(Redhat6.5)安装(二 )checking for c compiler default output file name... configure:error:C
一、安装erlang   由于RabbitMq的linux运行环境需要erlang环境,所以需要先安装erlang;   1、erlang下载: http://erlang.org/download/(我下载的是otp_src_R16B.tar.gz版)     2、检查依赖包:     make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel tk unixODBC unixODBC-devel xmlto glibc mpfr     
2018/06/20
6590
CentOS7下RabbitMQ服务安装配置
RabbitMQ是流行的开源消息队列系统,是AMQP(Advanced Message Queuing Protocol高级消息队列协议)的标准实现,用erlang语言开发。RabbitMQ据说具有良好的性能和时效性,同时还能够非常好的支持集群和负载部署,非常适合在较大规模的分布式系统中使用,具体特性还在验证中,待检验。由于项目需要,安装并配置了RabbitMQ,服务器操作系统是CentOS7。具体步骤如下:
Java架构师历程
2018/09/26
6730
CentOS7下RabbitMQ服务安装配置
记一次RabbitMQ(3.8版本)在liunx下安装
区分版本添加隐射外网配置否则外网ip无法登陆(我已经最新3.8为例,之前版本需要修改不的配置文件)
吴文周
2024/01/27
2630
记一次RabbitMQ(3.8版本)在liunx下安装
version-manager多版本管理工具
多个 SDK 的通用版本管理器,例如 Java、Go、Node.js、Deno、Bun、.Net、Python、PyPy、PHP、Rust、Kotlin、Scala、Groovy、Flutter、Julia、Zig、V、Typst、Android SDK。比 vfox、fnm、gvm 等更好的选择。
保持热爱奔赴山海
2024/04/12
6520
OpenTelemetry Erlang/Elixir、Javascript和Ruby发布v1.0
作者:Tristan Sloughter (与 Daniel Dyla 和 Robert Laurin 合作。)
CNCF
2022/03/27
7890
Laravel中运行Gulp任务的利器(一) —— Laravel Elixir简介及入门教程
对现代开发者而言,即使是构建一个很简单的web应用,也要编写很多任务,比如压缩图片、最小化CSS和JavaScript文件、移除调试代码、运行单元测试以及处理很多其它不计其数的任务。当你将绝大部分精力放在业务主流程上,却还需要时刻盯着这些碎片化任务着实有点让人焦头烂额。 Laravel的宗旨是让PHP开发变得轻松愉悦,所以从Laravel 5开始,提供了一个新的被称作LaravelElixir的API。该API集成了Gulp,为编译Laravel项目中的Less、Sass、CoffeeScript以及处理许
前朝楚水
2018/04/03
2.2K0
推荐阅读
相关推荐
通过 vfox 安装管理多版本 Erlang 和 Elixir
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验