以太坊Truffle框架搭建一气呵成无坑版教程

以太坊开发框架——Truffle的基础使用 这里写目录标题TruffleTruffle 简介Truffle 的客户端安装Truffle创建项目Migrationartifacts.require()exports 的函数deployer 对象更新 migration 文件更新 truffle 配置文件创建账户(可用 metamask 上账户转币)部署新建 JavaScript 文件 app/scripts/index.js Truffle Truffle 简介 truffle unbox webpack 一条命令由于要下载众多需要的模块,大概耗时 1 阅读详情

      Truffle框架搭建的教程网上也有好多,但是随着truffle版本的更新,truffle.js改名truffle-config.js、truffle命令升级、truffle与testrpc端口不一致、浏览器钱包插件等问题,导致原有的教程不再适用,在踩过一个又一个的坑后,打算写一篇无坑版本,让广大初学者可以一气呵成搭建完环境。
一、安装Node.js

在https://nodejs.org/en/下载安装包,选择LTS版本下载。

写文章时最新版本是8.11.1,安装后在windows命令cmd窗口,输入node -v,能显示node的版本就成功第一步了

二、安装Truffle

truffle是本地的用来编译、部署智能合约的工具。
在windows命令行窗口输入npm -g install truffle。
没有报错信息就是成功第二步

三、安装Ethereum TestRPC

命令行窗口输入npm install -g ethereumjs-testrpc

安装后再输入testrpc看是否成功启动,testrpc默认是监听8545端口

 

四 、启动Dapp

 

第三步启动的testrpc窗口不要关闭,新建立开发目录helloworld,打开一个新的命令窗口。进入到helloword目录。
truffle 初始化
输入
truffle unbox webpack执行完后,再输入dir看本地有没有下载到新的文件。网上很多老的教程是truffle init webpack命令,但是truffle新的版本不支持,只能是truffle unbox webpack。
 

编译合约
输入命令truffle compile出现下面的错误,这也是旧的教程的一个坑。

把helloworld目录的truffle.js改名为truffle-config.js,再执行命令。

部署合约

部署智能合约成功的前提就是testrpc已经在运行,输入命令truffle migrate。

启动服务

输入命令npm run dev.

打开浏览器,输入 http://localhost:8080/,出现"Couldn't get any accounts! Make sure yourEthereum client is configured correctly."

原因是chrome浏览器里安装MetaMask-以太坊钱包插件,把插件移除掉或者使用其他浏览器。

移除插件再打开,提示“There was an error fetching your accounts.”。

F12打开开发者工具,js代码是请求testrpc的9545端口。

请求合约的端口9545和testrpc监听端口8545不一致,只要把两者改成一致就行,解决办法以下二选一即可 :
1. 修改合约调用代码。helloworld\app\javascripts\app.js,把window.web3 = new Web3(new Web3.providers.HttpProvider("http://127.0.0.1:9545"));的端口号9545改为8545

 

2.    testrpc监听端口改为8545。
启动testrpc时用命令行 testrpc –p 9545。
truffle部署合约的端口也改为9545,在truffle-config.js把port参数改为9545。

执行truffle compile、truffle migrate、npm run dev重新编译、部署、启动。

 

合约调用

testrpc控制台上有十个测试地址,复制一个地址在页面转账。

 

 

 

 

 

 

以太坊DApp开发入门教程——Node.js和truffle框架打造区块链投票系统 第一节 课程概述本课程面向初学者,内容涵盖以太坊开发相关的基本概念,并将手把手地教大家如何构建一个 基于以太坊的完整去中心化应用 —— 区块链投票系统。通过本课程的学习,你将掌握:以太坊区块链的基本知识开发和部署以太坊合约所需的软件环境使用高级语言(solidity)编写以太坊合约使用NodeJS编译、部署合约并与之交互使用Truffle框架开发分布式应用使用控制台或网页与合约进行交互前序知识要求... 阅读详情

相关推荐

kali linux下以太坊开发环境搭建:ganache与truffle的连接

搭建ganache与truffle比较简单,记录一下。主要是为了后面测试call与delegatecall调用地址做准备。 Ganache(更名前叫做:testrpc)是在本地使用内存模拟的一个以太坊环境,可以快速启动个人以太坊区块链,并可以使用它来运行测试,执行命令、检查状态,同时控制链条的运行方式。通过Ganache我们可以快速查看所有账户的当前状态,包括他们的地址、私钥、交易和余额。查看Ganache内部区块链的日志输出,包括响应和其他重要的调试信息,检查所有块和交易,以获取相关问题的信息。 truf

qq_28786023的博客 1142

以太坊DAPP——truffle框架的使用

这里写自定义目录标题以太坊DAPP——truffle框架的使用操作系统安装Node.js和npm安装Truffle安装Ganache-cli新建一个空文件夹功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公...

Limbo_Y的博客 926

一起学:以太坊智能合约开发

课程介绍 无论在科技圈还是金融圈,“区块链”俨然成了最热的词汇。2016年,区块链写入了国家的十三五规划中;2017年,央行基于区块链技术的数字票据交易平台测试成功;同年,工信部发布了首个区块链参考架构标准。
经过2017年如火如荼的投资盛宴,区块链开始逐渐走向应用落地,业内都在积极探索使用场景。如金融领域的资产贸易、支付系统、金融服务,其他领域的电子商务、社交通讯、游戏娱乐等等。同时,BAT、迅...

GitChat 1万+

以太坊DApp开发环境搭建-Windows

可能需要: npm install --global --production windows-build-tools npm install -g ethereumjs-testrpc 安装python,并配置环境变量 安装pip python -m pip install -U pip 1.1 安装node.js 下载后直接安装 64位包装包 PS C:\WINDOWS\system32&...

zzz19920821的博客 927

以太坊Truffle框架开发实战手册

以太坊作为当前主流的智能合约平台之一,其去中心化应用(DApp)的开发已成为区块链技术落地的重要方向。DApp基于智能合约运行在以太坊虚拟机(EVM)之上,具备去中心化、透明性和不可篡改等特性,适用于金融、供应链、游戏等多个领域。本章将从DApp的基本构成入手,介绍其前端、后端(智能合约)与区块链网络之间的交互机制,并逐步引导开发者理解整个开发流程:从环境搭建、合约编写、部署到前端集成。

weixin_42186015的博客 826

truffle init error,unbox Downloading报错问题

这个问题困扰了我整整三天。 在成功安装node.js,成功安装truffle后,使用truffle init 命令出现如下两种报错 一 网络未连接 C:\Users\Administrator\new>truffle init Starting unbox… √ Preparing to download box × Downloading Unbox failed! RequestError: Error: getaddrinfo ENOTFOUND raw.githubusercontent.com raw.githubusercontent.com:443 at new RequestE

以太坊开发框架truffle以及testrpc注意事项

环境版本: Truffle v3.4.9 (core: 3.4.8) Solidity v0.4.15 (solc-js) EthereumJS TestRPC v4.1.1 (ganache-core: 1.1.2) 问题:通过Truffle和TestRPC生成测试环境以后,无法通过IP地址访问环境,而只能在本机通过localhost访问 解决方...

weixin_34396103的博客 148

solidity-以太坊区块链Truffle-webpack开发入门 (十四) 网络和应用部署

网络和应用部署 原文连接 即使最小的dapp也会有两个区块,一个放在开发机器上,一个发布出去(放在公网Ethereum或者是私链上),truffle有一套系统可以分别管理每个网络上的编译和部署,指定一个网络部署合约: $ truffle migrate --network live 当指定了一个新的网络部署时,编译后的文件 ./build/contracts 中的.json文件会自动更新,在其中会记录每个网络对应的合约配置信息,当运行时会根据连接的网络自动启用相应的合约。 因为在合约的编译文件运行时会自发现网络,所以你只需要部署一次合约,运行的Ethereum客户端会决定使用哪个合约的编译文

truffle init/unbox 中遇到的许多错误以及解决

truffle初始化的坑有很多: 1. truffle init报错 truffle init报错:Error: Truffle Box at URL https://github.com/truffle-box/bare-box.git doesn’t exist. If you believe this is an error, please contact Truffle support. [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-mWI7p9Ii-15990580

文杰的博客 3188

VINS-Fusion实战:从零搭建无人机视觉惯性导航系统(附ROS配置指南)

本文提供了一份详尽的VINS-Fusion实战指南,涵盖从硬件选型、传感器标定到ROS节点配置与参数调优的全过程。重点解析了如何将VINS-Fusion视觉惯性里程计系统与PX4飞控深度集成,并实现室外GPS融合,旨在帮助开发者从零搭建稳定、高精度的无人机视觉惯性导航系统。

lll78的博客 867

OpenSSL玩转证书链:从Windows CA根证书到签发多域名/IP的服务器证书全攻略

本文详细介绍了如何使用OpenSSL在Windows环境下构建私有CA体系,从创建CA根证书到签发支持多域名/IP的服务器证书的全流程。通过实战指南,读者可以掌握零成本证书管理技术,灵活配置SAN扩展,并了解在Nginx、Apache等主流服务器中的证书部署方法,适用于企业内网、IoT设备等HTTPS加密场景。

weixin_28731223的博客 440

【web3实践 | 以太坊开发框架Truffle使用】

Truffle是一个面向以太坊的开发框架,提供一整套构建、测试、部署以及管理智能合约的开发工具。Truffle可以与以太坊节点交互,使开发人员能够在本地开发、测试和部署智能合约。Truffle提供了一个基于命令行的、易于使用的开发环境,可以通过Truffle来编写智能合约,进行本地测试和调试,进行远程部署,以及与以太坊网络进行交互。Truffle还提供了自己的智能合约编译器和构建管道,可以方便地构建、优化和管理智能合约的构建过程,减少了手动干预的需要。

鱼干的博客 4164

H3C交换机Console口连接全攻略:从接线到PuTTY配置(附常见问题排查)

本文详细介绍了H3C交换机Console口的连接与配置方法,包括硬件线缆选择、驱动安装、PuTTY参数设置及常见问题排查。特别针对Console转USB线缆的兼容性和驱动安装难点提供实用建议,帮助网络工程师快速掌握串联调试技巧,解决连接中的黑屏、乱码等典型问题。

weixin_42549451的博客 677

Ubuntu下Truffle框架的搭建

Truffle是一个世界级的开发环境,测试框架,以太坊的资源管理通道,致力于让以太坊上的开发变得简单,Truffle有以下: 内置的智能合约编译,链接,部署和二进制文件的管理 快速开发下的自动合约测试 脚本化的,可扩展的部署与发布框架 部署到不管多少的公网或私网的网络环境管理功能 使用EthPM&NPM提供的包管理,使用ERC190标准 可配的构建流程,支持紧密集成 Tru...

u010304442的博客 2665

避坑实录:用certificate-manager重置vCenter 6.7证书时遇到的三个致命陷阱

本文详细解析了使用certificate-manager重置vCenter 6.7证书时可能遇到的三大致命陷阱,包括进度卡在85%的服务启动僵局、脚本突然退出的静默杀手以及密码错误锁死的隐藏机制。通过实战验证的解决方案和高级恢复技巧,帮助系统管理员有效避免vCenter环境瘫痪,确保证书更新过程顺利进行。

g5h6i7j的博客 919

2025年春科研论文写作指导(如何写好科研论文)研究生网课期末考试

希望能帮助到大家

beijieweiyu的博客 5798

win10搭建truffle框架(踩坑、填坑至无坑)

1.版本信息 1.1 node node -v v12.15.0 1.2 npm npm -v 6.13.4 #换源 npm config set registry https://registry.npm.taobao.org npm config list ; cli configs metrics-registry = "https://registry.npm.taobao.org/...

weixin_43330666的博客 6808

LDRA Testbed(TBrun)软件单元测试_实例讲解(对多次调用的函数打桩)

在之前的文章《LDRA Testbed(TBrun)软件单元测试_操作指南》中,已经讲解了如何使用TBrun进行软件单元测试的基本操作步骤。本篇文章将结合实例进一步讲解被测函数中包含多次调用其他函数时,如何对其打桩来实现测试目的(详细的操作流程本文不再重述,若有不清楚的,可以结合之前的操作指南一起来看)。本文以一个被测函数作为示例,讲解了如何使用Testbed(TBrun)对涉及到多次调用其他函数的被测函数进行单元测试。本文的示例可能比较简单,但是思路、方法和流程都是通用的,希望对大家有所帮助。

文章主要涉及嵌入式软件开发、测试、项目管理等,欢迎交流,共同进步。 1465

以太坊开发(一)——Truffle和Ganache

Truffle是目前最流行的以太坊开发框架,采用JavaScript编写,支持智能合约的编译、部署和测试。 一、安装Truffle 1. 首先安装Truffle依赖的NodeJS: curl -sL https://deb.nodesource.com/setup_9.x | sudo -E bash - sudo apt-get install -y nodejs sudo apt-get ...

飞久 4万+

【ComfyUI】Flux 图像扩展

本文介绍了一个基于Flux扩图技术的ComfyUI工作流,能够智能扩展图像尺寸并保持内容连贯性。该流程通过扩散模型与条件编码的结合,对图像边缘进行语义填充生成,适用于艺术创作、海报设计等场景。工作流包含图像加载、外扩填充、文本编码、扩散采样等核心节点,采用Flux1-fill-dev等专业模型确保生成质量。演示效果显示,系统能自然延伸原图内容,保持风格统一。该技术可广泛应用于插画扩展、摄影增强、游戏场景构建等领域,显著提升创意工作效率。

Mr数据杨 930

Multi-Agent

Multi-Agent System(MAS,多代理系统)是分布式人工智能(DAI)领域皇冠上的明珠,其核心思想是通过多个自主、交互、目标导向的智能体(Agent)的协同与竞争,解决单智能体无法或难以高效处理的复杂问题——包括大规模资源调度、多模态数据理解与决策、复杂软件架构的自治运维、甚至未来城市级的交通与能源管理。本文将以结构化分析推理和第一性原理思考。

AI智能探索者的博客 407

以太坊:Truffle开发入门

以太坊是区块链开发领域最好的编程平台,而truffle是以太坊(Ethereum)最受欢迎的一个开发框架,这是我们第一篇区块链技术文章介绍truffle的原因,实战是最重要的事情,这篇文章不讲原理,只搭建环境,运行第一个区块链程序(Dapp)。 安装truffle $ npm install -g truffle 依赖环境 NodeJS 访问https://nodejs.org官方网站下载...

跨链技术践行者 8391

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

以太坊:Truffle 概述

Truffle 概述 Truffle 是一个在以太坊进行 DApp 开发的世界级开发环境、测试框架。它在使开发人员更轻松。这里有几篇博客让我们了解如何开发DApp: 开发、部署第一个去中心化应用 (Dapp) - 宠物商店 使用 Truffle 开发以太坊投票 DAPP DApp 教程:用 Truffle 开发一个链上记事本 使用 Truffle 开发有一以下优...

跨链技术践行者 1万+

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Truffle 开发以太坊DAPP应用

基础环境 NodeJ 5.0+ Python 3 Windows,Linux or Mac OS X 安装 npm install truffle -g 通过上述指令安装truffle,目前truffle的版本在3.0+,需要将本机python升级到python3。通过truffle指令可以验证是否安装成功。 在开发过程中我们一般安装TestRpc来作为测试网络,也可以选

EvansChang 5262

以太坊Truffle框架构建Dapp

1.安装环境通过node安装truffle,推荐在ubuntu 14.04下进行开发,window下可能会遇到各种问题。$ npm install -g truffle  我的node版本是npm版本是下载之后输入$ truffle -v  我的版本是:2.开始构建项目首先准备一个目录存放项目$ mkdir  "你的目录名"$cd "你的目录名"       ---进入目录接下来我们需要使用tru...

qq_35513792的博客 5282

第四课 以太坊开发框架Truffle从入门到实战

1. TRUFFLE是什么? Truffle是一个世界级的开发环境,测试框架,以太坊的资源管理通道,致力于让以太坊上的开发变得简单,Truffle有以下: 内置的智能合约编译,链接,部署和二进制文件的管理。 快速开发下的自动合约测试。 脚本化的,可扩展的部署与发布框架。 部署到不管多少的公网或私网的网络环境管理功能 使用EthPM&NPM提供的包管理,使用ERC190标准。 ...

kfq0071的专栏 738
上一篇: 手机端和wap端页面的自适应技术方案
下一篇: 书上得来终觉浅,绝知此事要躬行-以太坊平台实战篇
ChainCode
ChainCode 领域专家: 后端开发技术领域 领域专家: 后端开发技术领域
博客等级 码龄11年 115粉丝 51原创
评论 21
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值