Компилятор Truffle не может найти открытые контракты zeppelin - PullRequest
1 голос
/ 16 июня 2020

Я получаю сообщение об ошибке при попытке компиляции. Я проверил внутри node_modules, и все контракты там. Я запускаю трюфель с помощью sudo. Дело не только в этом импорте, все открытые контракты zeppelin делают это.

Error: Could not find /home/a/Documents/so/contracts/openzeppelin-solidity/contracts/crowdsale/emission/MintedCrowdsale.sol from any sources; imported from /home/a/Documents/so/contracts/crowdsale.sol
    at Resolver.<anonymous> (/usr/local/lib/node_modules/truffle/build/webpack:/packages/resolver/dist/lib/resolver.js:53:1)
    at Generator.next (<anonymous>)
    at fulfilled (/usr/local/lib/node_modules/truffle/build/webpack:/packages/resolver/dist/lib/resolver.js:5:42)
    at <anonymous>
Truffle v5.1.28 (core: 5.1.28)
Node v8.10.0

Я импортирую вот так

pragma solidity ^0.4.23;

import "openzeppelin-solidity/contracts/crowdsale/emission/MintedCrowdsale.sol";

1 Ответ

0 голосов
/ 20 июня 2020

Для импорта необходимо использовать синтаксис @:

import "@openzeppelin-solidity/contracts/crowdsale/emission/MintedCrowdsale.sol";

См. Примеры здесь:

https://github.com/Dawn-Protocol/dawn-erc20-erc777/blob/master/contracts/DawnTokenImpl.sol#L5

...