Solidity

部署失敗:“遷移”——僅允許通過 RPC 進行重放保護 (EIP-155) 事務

  • February 17, 2022

我正在嘗試將已經在主網中測試過的程式碼遷移到 ropsten 網路。我想知道為什麼它會拋出以下奇怪的錯誤。在過去的 2 天裡,我們作為一個團隊無法找到解決方案。

在這方面的任何幫助都將非常有幫助

來自松露的錯誤消息

Error:  *** Deployment Failed ***

"Migrations" -- only replay-protected (EIP-155) transactions allowed over RPC.

at C:\Users\****\AppData\Roaming\nvm\v8.11.4\node_modules\truffle\build\webpack:\packages\deployer\src\deployment.js:364:1
at <anonymous>
at process._tickCallback (internal/process/next_tick.js:188:7)
Truffle v5.1.12 (core: 5.1.12)
Node v8.11.4

2_deploy_crowdsale.js

await deployer.deploy(
 KiiACrowdSale,
 _rate, 
 _ownerAddress, 
 this.token.address
);

添加 await deployer.deploy( KiiACrowdSale, _rate, _ownerAddress, this.token.address,{chainId: 3} ) 後出錯; 在此處輸入圖像描述

這是我為解決我的問題所做的事情:

Change dependency of hdwallet-provider from 1.0.17 to 1.4.0. 

替換 package.json 中的以下行:

"truffle-hdwallet-provider": "1.0.17"

   "@truffle/hdwallet-provider": "^1.4.0"

如果您有同樣的問題,您將不再收到錯誤!

大衛

我在 truffle 5.0.5 版中遇到了這個問題,將 truffle 更新到 5.3.0 版解決了這個問題!

npm install -g truffle@5.3.0 --save

引用自:https://ethereum.stackexchange.com/questions/94418