Не удается найти модуль TronWeb, на котором запущены Nodejs, в AWS Lightsail

У меня есть экземпляр Nodejs, запущенный на моем локальном компьютере, который отлично работает, когда я запускаю команду node index.js. Я пытаюсь перенести его на экземпляр AWS Nodejs в Lightsail. Я установил и настроил его идентично, но при запуске команды «node index.js» не удается найти модуль «TronWeb». Папка index.js, package.json, package-lock.json и node_modules в обоих случаях идентичны, и я установил пакет tronweb с помощью npm install tronweb. Есть какие-нибудь мысли о том, почему TronWeb не может находиться в экземпляре Lightsail Nodejs? Ниже приведены первые фрагменты кода файла index.js, чтобы дать вам представление о том, что это такое. Выдает ошибку в строке 16 "const tronWeb = new TronWeb ..."

// Initiate request object
const request = require("request");
// Initiate TronWeb object
const TronWeb = require('TronWeb');
const HttpProvider = TronWeb.providers.HttpProvider;
// Full node http endpoint
const fullNode = new HttpProvider("https://api.shasta.trongrid.io");
// Solidity node http endpoint
const solidityNode = new HttpProvider("https://api.shasta.trongrid.io");
// Contract events http endpoint
const eventServer = "https://api.shasta.trongrid.io";
// Private key
const privateKey = "";

// Create instance of TronWeb
const tronWeb = new TronWeb(
    fullNode,
    solidityNode,
    eventServer,
    privateKey
);

person Andrew Clark    schedule 24.03.2020    source источник


Ответы (1)


Ладно, это действительно глупо, но я получил ответ.

const TronWeb = require('tronweb');

было все, что мне было нужно. Не уверен, почему он отлично работает, как

const TronWeb = require('TronWeb');

на моем локальном компьютере, но теперь он работает нормально. «tronweb» - это фактическое имя пакета, но я предполагал, что «TronWeb» был частью этого пакета. Клянусь, я уже пробовал использовать строчные буквы «tronweb» и раньше, но думаю, что нет. Кто знает. Задача решена.

person Andrew Clark    schedule 24.03.2020