讲师中心 微信公众号
AI工具推荐 视频效率加速

VSCode如何搭建Vyper语言智能合约开发环境

星晨小哥_5970

星晨小哥_5970

发布时间:2026-05-06 16:09:17

|

589人浏览过

|

来源于php中文网

原创

应先点击右下角语言模式,手动选择“Vyper”;若无此选项,需重启VS Code或检查插件是否启用,同时确认已通过pip安装vyper并配置好Python环境。

vscode如何搭建vyper语言智能合约开发环境

安装Vyper插件后仍无语法高亮?检查 VS Code 是否识别 .vy 文件关联

VS Code 默认不把 .vy 当作 Vyper 文件处理,即使装了插件,打开文件也可能是纯文本模式。右下角状态栏会显示“Plain Text”或“Python”,而不是“Vyper”。

解决方法很简单:点击右下角语言模式名称 → 在弹出框中搜索 “Vyper” → 选择它。之后该文件就会启用语法高亮、括号匹配和基础补全。

  • 首次设置后,可点击“Configure File Association for '.vy'”让所有 .vy 文件默认用 Vyper 模式打开
  • 如果没看到 Vyper 选项,说明插件未正确激活,重启 VS Code 或检查插件是否已启用(不是仅“已安装”)
  • 部分插件(如 Vyper Language Support)依赖 Python 环境,需确保系统 PATH 中有可用的 python3 命令

为什么 vyper 命令在终端里报 “command not found”?别跳过 Python 包安装步骤

Vyper 是 Python 写的编译器,必须通过 pip 安装才能调用命令行工具。只装插件 ≠ 装好编译器 —— 这是新手最常卡住的地方。

执行以下命令(推荐使用虚拟环境,避免污染全局 Python):

python3 -m venv vyper-env
source vyper-env/bin/activate  # macOS/Linux
# 或 vyper-env\Scripts\activate.bat  # Windows
pip install vyper

验证是否成功:

VSCode
VSCode

避免常见的 VSCode 错误——设置冲突、调试器配置和扩展冲突。

下载
vyper --version
  • 若提示 command not found,检查 pip install 输出路径,确认 vyper 可执行文件是否在当前 shell 的 $PATH 中
  • Windows 用户遇到权限问题,不要用 PowerShell 默认策略限制,改用 CMD 或关闭执行策略(Set-ExecutionPolicy RemoteSigned -Scope CurrentUser)
  • VS Code 终端可能未继承激活后的环境变量,建议在终端中手动运行 source 或重新打开集成终端

如何在 VS Code 里一键编译 .vy 文件?用 tasks.json 配置 shell 任务

插件本身不提供自动编译功能,得靠 VS Code 的 tasks.json 手动绑定 vyper 命令。否则每次都要切到终端敲命令,效率极低。

在项目根目录创建 .vscode/tasks.json,内容如下:

{
  "version": "2.0.0",
  "tasks": [
    {
      "label": "compile-vyper",
      "type": "shell",
      "command": "vyper",
      "args": ["-f", "combined_json", "${file}"],
      "group": "build",
      "presentation": { "echo": true, "reveal": "always" },
      "problemMatcher": []
    }
  ]
}
  • ${file} 是当前打开的 .vy 文件路径,确保你在合约文件里按 Ctrl+Shift+B(macOS Cmd+Shift+B)才能触发
  • 输出格式用 -f combined_json 最实用,生成 ABI + bytecode,方便后续部署;别用 ir 或 ast 等调试专用格式
  • 如果报错 “Unsupported version”,说明合约顶部的 #!vyper 或 @version 声明与本地 vyper 版本不兼容,查 vyper --list-tags 看支持哪些版本

部署前必须生成字节码和 ABI,但 vyper 不像 Solidity 那样自动存到 artifacts 目录

Vyper 编译结果默认输出到终端,不会自动生成 artifacts/ 文件夹或 JSON 文件。硬编码路径或手动复制粘贴极易出错,尤其多合约项目。

建议加一层封装脚本,比如项目根目录放 scripts/compile.py:

import subprocess
import json
import sys
<p>contract = sys.argv[1]
result = subprocess.run(
["vyper", "-f", "combined_json", contract],
capture_output=True, text=True
)
if result.returncode == 0:
data = json.loads(result.stdout)
with open(f"artifacts/{contract.replace('.vy', '.json')}", "w") as f:
json.dump(data, f, indent=2)</p>
  • 然后在 tasks.json 中把 command 改成 python scripts/compile.py
  • ABI 和字节码分离后,部署脚本(如用 web3.py)才能稳定读取,避免因终端截断、编码异常导致部署失败
  • 注意 Vyper 合约没有构造函数参数编码逻辑,ABI 中 constructor 字段永远为空,这点和 Solidity 行为不同,容易在部署时漏掉参数校验

Vyper 的工具链比 Solidity 更“裸”,没有 Hardhat 或 Foundry 那类开箱即用的框架支撑。哪怕只是生成 ABI 这一步,也要自己搭管道。最容易被忽略的是:编译器版本与合约声明版本必须严格一致,且不向下兼容 —— 写 @version 0.4.0 就必须用 vyper==0.4.0,混用会导致静默编译失败或运行时 revert。

热门AI工具

更多
PixTV
PixTV Hot

PixTV是一款面向AIGC内容创作的AI视频生成工具。

SkildArt
SkildArt Hot

SkildArt是一款AI文本写作工具,一站式 AI 视觉创作平台。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

AionClaw
AionClaw Hot

AionClaw是一款面向办公、创作和编程任务的AI桌面智能体。

讯飞智作

讯飞智作是一款AI视频创作工具,AI文本配音工具,数字人课程、营销视频制作。

Lovart
Lovart Hot

一款面向视觉设计创作的AI设计平台,可通过智能体和画布工作流辅助制作海报、Logo、网页、PPT及其他视觉内容。

Loomy
Loomy Hot

一款AI工具,主要用于科大讯飞发布的桌面级 AI 助理,比 OpenClaw 更易用、更安全!,适合需要提升相关任务效率的用户。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

相关专题

更多
vscode是什么_vscode怎么安装配置
vscode是什么_vscode怎么安装配置

VS Code(Visual Studio Code)是一款免费、开源的跨平台代码编辑器,由微软开发和维护。它被广泛用于软件开发和编程,支持多种编程语言和框架。VS Code 同时提供了丰富的功能和扩展性,使开发者可以高效地编写、编辑和调试代码。

1375

2023.06.30

vscode怎么运行代码
vscode怎么运行代码

vscode是一个运行于MacOS X、Windows和Linux之上的,针对于编写现代Web和云应用的跨平台源代码编辑器;vscode免费而且功能强大,对JavaScript和NodeJS的支持非常好,自带很多功能,例如代码格式化,代码智能提示补全、Emmet插件等。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

2892

2023.07.21

vscode使用的框架介绍
vscode使用的框架介绍

VSCode是一款跨平台代码编辑器,它基于Electron框架和Monaco Editor构建。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

1969

2024.03.14

vscode一般用来写什么语言
vscode一般用来写什么语言

VSCode是一款功能强大的代码编辑器,支持多种编程语言和文件格式。它内置对 JavaScript、Python、Java、C++、TypeScript、HTML/CSS、Go 等语言的支持。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

1727

2024.03.14

vscode可以写什么语言
vscode可以写什么语言

vscode是一款强大的代码编辑器,支持多种编程语言的开发。通过安装扩展,可以为 JavaScript/TypeScript、Python、Java、C#、PHP、Go、Ruby、Rust、HTML/CSS 等语言提供智能代码补全、调试和格式化等功能。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2607

2024.03.15

vscode中文设置方法
vscode中文设置方法

方法一:在设置页面中,搜索“locale”,并选择“zh-cn”。方法二:按“Ctrl Shift P”快捷键,输入“Configure Display Language”,将语言修改为“zh-cn”。如果上述方法无效,可考虑安装中文插件。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

1838

2024.03.15

vscode用途介绍
vscode用途介绍

Visual Studio Code(VSCode)是一款由 Microsoft 开发的多功能文本编辑器,适用于各种编程语言。作为一款开源软件,VSCode 拥有代码高亮、自动补全、调试、Git 集成等强大功能,成为程序员不可或缺的工具。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

1262

2024.03.15

vscode和visualstudio的区别
vscode和visualstudio的区别

Visual Studio是一款功能强大的集成开发环境(IDE),适用于专业开发人员进行复杂项目的构建。而VSCode则是一款轻量级的代码编辑器,更适合各种规模的项目开发。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

1116

2024.03.15

OpenJDK JVM参数怎么调优
OpenJDK JVM参数怎么调优

Java应用运行缓慢,如何调整JVM参数?本专题介绍OpenJDK JVM性能调优的基本流程,涵盖性能指标确认、运行数据采集、内存配置和垃圾回收分析,帮助你先定位瓶颈,再通过对照测试验证效果,避免直接套用参数而影响应用稳定性。

20

2026.10.16

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn