Компилятор Solidity

Я пытался написать компилятор для нового контракта. Он находится в compile.js и содержит:

pragma solidity ^0.4.7;

const path = require('path');
const fs = require('fs');
const solc = require('solc');

const inboxPath = path.resolve(__dirname, 'contracts', 'Inbox.sol');
const source = fs.readFileSync(inboxPath, 'utf8');

console.info(solc.compile(source, 1));

файл compile.js находится в папке "Входящие" каталога Файл Inbox.sol находится в папке "Входящие" / контракты / Inbox.sol.

вызывая "node compile.js" в консоли, я получаю:

SyntaxError: Unexpected identifier
    at createScript (vm.js:80:10)
    at Object.runInThisContext (vm.js:139:10)
    at Module._compile (module.js:616:28)
    at Object.Module._extensions..js (module.js:663:10)
    at Module.load (module.js:565:32)
    at tryModuleLoad (module.js:505:12)
    at Function.Module._load (module.js:497:3)
    at Function.Module.runMain (module.js:693:10)
    at startup (bootstrap_node.js:191:16)
    at bootstrap_node.js:612:3

как я понял не может найти источник?

Нет, он сказал, что есть что-то непредвиденное (синтаксическая ошибка), вероятно, исходящее из вашего исходного контракта, возможно, внутри есть ошибка

Fabien Greard 31.07.2018 11:35

это удивительно. Я думал, что он не нашел этот контракт Inbox.sol, потому что, когда я тестирую компилятор и пытаюсь указать неправильный путь к контракту, информация журнала консоли была такой же. В этом случае действительно ли что-то не так с исходным контрактом?

enem 31.07.2018 11:49

Ну, если бы они не были файлом, fs.readFileSync() он должен был сломаться, однако я предлагаю вам взглянуть на свой источник, посмотреть, является ли это ваш контракт, а затем проверить его напрямую с компилятором

Fabien Greard 31.07.2018 11:56

Удалите строку прагмы, ваш файл компиляции является файлом JS, а не Solid.

Raghav Sood 31.07.2018 12:33

OMG, конечно .. Большое спасибо, теперь все работает!

enem 31.07.2018 12:54
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
5
104
0

Другие вопросы по теме