Truffle

無法從任何來源找到 ./Election 的工件

  • May 4, 2020

我嘗試了乙太坊堆棧中提供的解決方案,但對我沒有任何幫助。

我的智能合約文件:

pragma solidity ^0.4.15;

contract Election {

   string public candidate;

   function Eletion () public {
       candidate = "Candidate 1";
   }
}

遷移文件:

var Election = artifacts.require("./Election.sol");

module.exports = function(deployer) {
 deployer.deploy(Election);
};

我收到以下錯誤

利用網路“發展”。

執行遷移:2_deploy_contracts.js

C:\Users\jeevastella\AppData\Roaming\npm\node_modules\truffle\build\cli.bundled.js:59973 throw new Error(“Could not find artifacts for " + import_path + " from any sources”); ^ C:\Users\jeevastella\AppData\Roaming\npm\node_modules\truffle\build\cli.bundled.js:59973 throw new Error(“Could not find artifacts for " + import_path + " from any sources”); ^

錯誤:無法從對象的 Resolver.require (C:\Users\jeevastella\AppData\Roaming\npm\node_modules\truffle\build\cli.bundled.js:59973:9) 的任何來源中找到 ./Election 的工件。需要 (C:\Users\jeevastella\AppData\Roaming\npm\node_modules\truffle\build\cli.bundled.js:69602:36) 在 ResolverIntercept.require (C:\Users\jeevastella\AppData\Roaming\npm\node_modules \truffle\build\cli.bundled.js:197047:32) 在 C:\Users\jeevastella\Desktop\election\migrations\2_deploy_contracts.js:1:26 在 Script.runInContext (vm.js:107:20) 在Script.runInNewContext (vm.js:113:17) 在 C:\Users\jeevastella\AppData\Roaming\npm\node_modules\truffle\build\cli.bundled.js:101639:14 在 FSReqWrap.readFileAfterClose

$$ as oncomplete $$(內部/fs/read_file_context.js:53:3)

不知道你是否還需要答案,但我通過編輯遷移文件需要路徑修復了它。根據您的情況將其更改為 var Election = artifacts.require("Election") 然後使用 –reset 執行遷移

請確認智能合約的名稱與遷移文件中提到的相同。

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