学习
实践
活动
工具
TVP
写文章
专栏首页区块链入门第三十二课 如何在Windows环境搭建REMIX本地环境,访问本地目录?1,摘要2,参考文档完成NODE.JS的安装3,命令行安装REMIX IDE4,启动本地IDE5,在REMIX上访问本地文件夹

第三十二课 如何在Windows环境搭建REMIX本地环境,访问本地目录?1,摘要2,参考文档完成NODE.JS的安装3,命令行安装REMIX IDE4,启动本地IDE5,在REMIX上访问本地文件夹

1,摘要

《第十课 Solidity语言编辑器REMIX指导大全》文章详细介绍了使用REMIX IDE环境调试Solidity智能合约的方法,其中没有介绍在本地部署IDE环境,访问本地目录的方法。 本文的重点: (1)在本地WINDOWS 10环境安装NODE.JS环境; (2)在本地安装REMIX IDE环境,可以本地直接访问编辑器; (3)安装REMIXD,可以访问本地目录;

2,参考文档完成NODE.JS的安装

请参考《Node.js安装及环境配置之Windows篇》文档,安装好NODE.JS环境。

【高能告警】 安装后不要运行“BoxStarter”这个插件,否则WINDOWS系统会一直重启。只有进入安全模式,删除这个启动程序才可以恢复正常。说多了都是泪!

安装成功后,可以看到NODE.JS的版本:

C:\Users\dd>node -v
v10.14.0

3,命令行安装REMIX IDE

CTRL+R调出WINDOWS命令行窗口,输入以下命令安装remix-ide本地环境。

npm install remix-ide -g

安装成功输出的结果:

...
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.4 (node_modules\remix-ide\node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.4: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})

+ remix-ide@0.7.5
added 767 packages from 411 contributors in 250.388s

4,启动本地IDE

在WINDOWS CMD中输入REMIX-IDE启动程序:

remix-ide

然后用CHROME浏览器打开本地链接:http://127.0.0.1:8080/

至此,本地IDE的环境就搭建好了。

5,在REMIX上访问本地文件夹

5.1 带参数安装Python

安装 windows-build-tools,会同步安装完Python

npm install --global --production windows-build-tools

【成功输出】

C:\Users\dd>npm install --global --production windows-build-tools

> windows-build-tools@5.0.0 postinstall C:\Program Files\nodejs\node_global\node_modules\windows-build-tools
> node ./dist/index.js



Downloading vs_BuildTools.exe
[>                                            ] 0.0% (0 B/s)
Downloaded vs_BuildTools.exe. Saved to C:\Users\dd\.windows-build-tools\vs_BuildTools.exe.

Starting installation...
Launched installers, now waiting for them to finish.
This will likely take some time - please be patient!

Status from the installers:
---------- Visual Studio Build Tools ----------
Successfully installed Visual Studio Build Tools.
------------------- Python --------------------
Python 2.7.15 is already installed, not installing again.

Now configuring the Visual Studio Build Tools..

All done!

+ windows-build-tools@5.0.0
updated 1 package in 21.85s

5.2 带参数安装node-gyp

gyp是为Chromium项目创建的项目生成工具,可以从平台无关的配置生成平台相关的Visual Studio、Xcode、Makefile的项目文件。这样一来我们就不需要花额外的时间处理每个平台不同的项目配置以及项目之间的依赖关系。

npm install --global node-gyp

安装成功输出结果:

C:\Program Files\nodejs>npm install --global node-gyp
C:\Program Files\nodejs\node_global\node-gyp -> C:\Program Files\nodejs\node_global\node_modules\node-gyp\bin\node-gyp.js
+ node-gyp@3.8.0
added 97 packages from 67 contributors in 21.278s 

5.3 安装REMIXD

npm install -g remixd

安装成功输出结果:

...
  validation.vcxproj -> C:\Program Files\nodejs\node_global\node_modules\remixd\node_modules\websocket\build\Release\\validation.node
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.4 (node_modules\remixd\node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.4: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})

+ remixd@0.1.8-alpha.6
added 742 packages from 393 contributors in 109.461s

5.4 典型错误

错误信息:

C:\Program Files\nodejs>npm install -g remixd
npm WARN deprecated fs-promise@2.0.3: Use mz or fs-extra^3.0 with Promise Support
npm WARN deprecated tar.gz@1.0.7: ??  WARNING ?? tar.gz module has been deprecated and your application is vulnerable. Please use tar module instead: https://npmjs.com/tar

> scrypt@6.0.3 preinstall C:\Program Files\nodejs\node_global\node_modules\remixd\node_modules\scrypt
> node node-scrypt-preinstall.js

C:\Program Files\nodejs\node_global\remixd -> C:\Program Files\nodejs\node_global\node_modules\remixd\bin\remixd

> scrypt@6.0.3 install C:\Program Files\nodejs\node_global\node_modules\remixd\node_modules\scrypt
> node-gyp rebuild


C:\Program Files\nodejs\node_global\node_modules\remixd\node_modules\scrypt>if not defined npm_config_node_gyp (node "C:\Program Files\nodejs\node_modules\npm\node_modules\npm-lifecycle\node-gyp-bin\\..\..\node_modules\node-gyp\bin\node-gyp.js" rebuild )  else (node "C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" rebuild )
gyp ERR! configure error
gyp ERR! stack Error: Can't find Python executable "python", you can set the PYTHON env variable.
gyp ERR! stack     at PythonFinder.failNoPython (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\configure.js:484:19)
gyp ERR! stack     at PythonFinder.<anonymous> (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\configure.js:509:16)
gyp ERR! stack     at C:\Program Files\nodejs\node_modules\npm\node_modules\graceful-fs\polyfills.js:284:29
gyp ERR! stack     at FSReqWrap.oncomplete (fs.js:154:21)
...
npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Program Files\nodejs\node_cache\_logs\2018-11-29T02_03_08_731Z-debug.log

解决方案: 执行"4.1 带参数安装Python","4.2 带参数安装node-gyp"后,完成环境依赖安装后就可以了。

6,http://127.0.0.1 设置本地共享目录

1)以管理员身份打开CMD命令:

2) 设置本地共享目录 在需要的本地合约代码的目录下启动remix-ide, Remix IDE 会自动把当前目录做为共享目录。

remixd -s D:\jusanban\doc\50-编码实现\BlockChain --remix-ide 127.0.0.1

输出:

3)【失败】连接本地失败 点击"Connect"

失败

粉红提示失败:

命令行的提示如下:

Connection from origin http://127.0.0.1:8080 rejected
或者
 Connection from origin http://remix.ethereum.org rejected

【求助】 为什么本地搞不定,有哪位同学解决了告知一下方法和原因哦。 【猜测】输入http://remix.ethereum.org也会出现连接不上的问题,猜测应该是不支持http连接,只支持https链接了。

过程中有错误提示: 【错误提示】

C:\Users\dd>remixd -s "D:\jusanban\doc\50-编码实现\BlockChain" --remix-ide "https://remix.ethereum.org"
[WARN] You may now only use IDE at https://remix.ethereum.org to connect to that instance
[WARN] Any application that runs on your computer can potentially read from and write to all files in the directory.
[WARN] Symbolinc links are not forwarded to Remix IDE

setup notifications for D:\jusanban\doc\50-编码实现\BlockChain

events.js:167
      throw er; // Unhandled 'error' event
      ^

Error: listen EADDRINUSE 127.0.0.1:65520
    at Server.setupListenHandle [as _listen2] (net.js:1286:14)
    at listenInCluster (net.js:1334:12)
    at doListen (net.js:1460:7)
    at process._tickCallback (internal/process/next_tick.js:63:19)
    at Function.Module.runMain (internal/modules/cjs/loader.js:744:11)
    at startup (internal/bootstrap/node.js:285:19)
    at bootstrapNodeJSCore (internal/bootstrap/node.js:739:3)
Emitted 'error' event at:
    at emitErrorNT (net.js:1313:8)
    at process._tickCallback (internal/process/next_tick.js:63:19)
    [... lines matching original stack trace ...]
    at bootstrapNodeJSCore (internal/bootstrap/node.js:739:3)

【原因及解决方案】 已经启动了一个remixd。关闭后再重新启动就好了。

7,https://remix.ethereum.org设置本地共享目录

参考帮助文档,提示如果是使用在线的Remix,需要使用命令remixd -s shared-folder 来指定共享目录。 关闭原来的命令行窗口。 1)以管理员身份打开CMD命令:

2) 设置本地共享目录

remixd -s D:\jusanban\doc\50-编码实现\BlockChain --remix-ide https://remix.ethereum.org

窗口输出:

3)【成功】连接本地目录成功 CHROME输入网址:https://remix.ethereum.org 【说明】这个网站在国内不稳定,有时候需要访问外国网站才能访问。

此时,可以完整访问本地目录文件了。编译干啥的,都可以玩了。 这样,针对SOLIDITY有本地目录依赖的文件都可以编译通过了。

更多REMIX的知识学习可参考文章: 《第十课 Solidity语言编辑器REMIX指导大全》 第九课 如何在Remix环境下进行Solidity代码单步调试

8,参考

1)Node.js安装及环境配置之Windows篇 2)Access your local filesystem by using remixd

本文参与 腾讯云自媒体分享计划 ,欢迎热爱写作的你一起参与!
本文分享自作者个人站点/博客:https://www.jianshu.com/u/347463663a86复制
如有侵权,请联系 cloudcommunity@tencent.com 删除。
登录 后参与评论
0 条评论

相关文章

  • 第十课 Solidity语言编辑器REMIX指导大全

    【本文目标】 本文翻译和实践Solidity语言编辑器REMIX官网帮助文档,但并不拘泥于逐字翻译,而时根据实践用中文语言讲透编辑器相关功能。 【前置条件】...

    辉哥
  • 搭建智能合约开发环境Remix IDE及使用

    目前开发智能合约的IDE, 首推还是Remix, 而Remix官网, 总是由于各种各样的(网络)原因无法使用,本文就来介绍一下如何在本地搭建智能合约开发环境re...

    Tiny熊
  • 第三十三课 如何创建自己的ERC721非同质化资产生物商店?

    从加密猫游戏开始,非同质化资产NFT的概念深入人心。不过现在社区中讲概念的多,真正落地发布自己ERC721资产的文章没有看到。辉哥这篇文章就来弥补下这个空缺。 ...

    辉哥
  • 跟我学 Solidity :开发环境

    Solidity[3]是用于开发以太坊智能合约的最受欢迎的语言之一,因此,作为一个想要成为区块链开发人员的人,我决定学习如何使用 Solidity 开发智能合约...

    Tiny熊
  • Web3与智能合约交互实战

    在最初学习以太坊的时候,很多人都是自己创建以太坊节点后,使用geth与之交互。这种使用命令行交互的方法虽然让很多程序员感到兴奋(黑客帝国的既视感),但不可能指望...

    Tiny熊
  • 以太坊DApp系列(二)---从入门到出家

    以太坊自2013年V神提出后,被无数人赋予美好的愿景,甚至被称为区块链2.0,其代币发行量更是达到了全球第二,仅次于比特币,而其带来的智能合约概念颠覆了人们对区...

    forrestlin
  • solidity在线编辑器Remix中文版 原

    Remix是以太坊官方开源的Solidity在线集成开发环境,可以使用Solidity语言在网页内完成以太坊智能合约的在线开发、在线编译、在线测试、在线部署、在...

    用户1408045
  • 福利|评价超高的《精通以太坊》丛书免费送,还包邮!手慢无

    在去中心化应用中,发送给节点的请求通常被称为“交易”。交易和普通的请求有很大不同,即交易的数据经过用户个人签名之后发送到节点。

    区块链大本营
  • 以太坊私有链搭建_以太坊节点减少

    下载地址:https://geth.ethereum.org/downloads/,下载之后是个 .exe文件,然后安装就好了,安装之后把geth的安装目录加入...

    全栈程序员站长
  • 使用hardhat开发以太坊智能合约-搭建环境

    在我们实际开发智能合约的时候,以往的开发一般都是使用 remix 在线编译器,它的好处是即开即用,本地不用安装相关的依赖环境,但是弊端也是显而易见的:难以测试、...

    Tiny熊
  • 第三十五课 如何配置Metadata以便装饰你的ERC721非同质化资产?

    前面2课讲解了如何部署ERC721非同质化资产,并作为海洋商店发布在OpenSea测试网络。 本文以野狼队的队员TOKEN为例,讲解如何配置图形/文字特有的E...

    辉哥
  • 第七课 技术小白如何在45分钟内发行通证(TOKEN)并上线交易

    通过逐步的指导和截图举证,一步步带领一个技术小白完成一个数字货币(通证,代币,TOKEN)的发布演示和上线交易。

    辉哥
  • 通过github构建个人博客1-基本环境搭建

    摘要: 随着时代的发展,知识的更新速度越来越快,“活到老,学到老”显得必须且重要。在众多学习方法之中,知识输出是学习的不二法门。互联网时代,通过写博客去记录自己...

    锦小年
  • 低成本个人建站系列二 —— 使用 Hexo+GitHub 搭建个人免费博客

    GitHub Pages 是由 GitHub 官方提供的一种免费的静态站点托管服务,让我们可以在 GitHub 仓库里托管和发布自己的静态网站页面。

    浩Coding
  • 5分钟快速上线Web应用和API(Vercel)

    Vercel 你可以理解为一个部署工具,支持部署静态网页和Node服务,部署后你还可以访问它自带生成的域名https。

    物立
  • 【刘文彬】【精解】开发一个智能合约

    合约也称合同、协议,是甲乙双方参与的,制定一系列条目规范双方权利与义务的文件。智能合约是电子化的,自动执行的,去中心化的,具有不可抵赖性,本质上它是一段代码,依...

    圆方圆学院
  • Next.js +Egg.js+React项目服务器部署超详解

    博客项目前端工程,所用技术栈为Next.js + React Hooks + Antd + Axios。

    Nealyang
  • Mac/Linux/Windows如何从零开始搭建Hexo静态博客并部署到远程平台

    本文同步博客图文( ´▽`):https://www.mintimate.cn/2020/03/19/hexo

    Mintimate
  • springcloud本地开发的微服务如何调用远程k8s的微服务

    一般来说k8s使用的容器网络与开发者的所在的办公网络并不能直接连通,如何在开发环境访问k8s的服务,就成为我们日常开发绕不开的坎。下边就介绍几种可以方便我们在本...

    lyb-geek

扫码关注腾讯云开发者

领取腾讯云代金券