Пряжа не может найти накопление? - PullRequest
2 голосов
/ 03 февраля 2020

Я пытаюсь собрать lumo (REPL Clojurescript) из источника в Debian ch root, и сталкиваюсь с ошибкой:

Building production bundle...
Circular dependency: src/js/cljs.js -> src/js/repl.js -> src/js/cljs.js
Circular dependency: src/js/cli.js -> src/js/cljs.js -> src/js/repl.js -> src/js/socketRepl.js -> src/js/cli.js
Circular dependency: src/js/repl.js -> src/js/socketRepl.js -> src/js/repl.js
Circular dependency: src/js/cljs.js -> src/js/repl.js -> src/js/socketRepl.js -> src/js/cljs.js
internal/modules/cjs/loader.js:796
    throw err;
    ^

Error: Cannot find module 'rollup'
Require stack:
- /root/tmp/lumo-1.10.1/scripts/bundleForeign.js
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:793:17)
    at Function.Module._load (internal/modules/cjs/loader.js:686:27)
    at Module.require (internal/modules/cjs/loader.js:848:19)
    at require (internal/modules/cjs/helpers.js:74:18)
    at Object.<anonymous> (/root/tmp/lumo-1.10.1/scripts/bundleForeign.js:1:16)
    at Module._compile (internal/modules/cjs/loader.js:955:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:991:10)
    at Module.load (internal/modules/cjs/loader.js:811:32)
    at Function.Module._load (internal/modules/cjs/loader.js:723:14)
    at Function.Module.runMain (internal/modules/cjs/loader.js:1043:10) {
  code: 'MODULE_NOT_FOUND',
  requireStack: [ '/root/tmp/lumo-1.10.1/scripts/bundleForeign.js' ]
}

Я пытался yarn add rollup, npm install rollup и npm install -g rollup, ни один из которых не помогает.

К сожалению, я недостаточно разбираюсь в этой системе сборки, чтобы знать, что делать дальше.

Любые идеи ?

Вот сценарии сборки: https://gist.github.com/cellularmitosis/df87e0c962e184b8bd29c8a3f07f3db4

РЕДАКТИРОВАТЬ: здесь находится содержимое bundleForeign. js:

const rollup = require('rollup').rollup;
const resolve = require('rollup-plugin-node-resolve');
const replace = require('rollup-plugin-replace');
const commonjs = require('rollup-plugin-commonjs');

rollup({
  input: 'node_modules/google-closure-compiler-js/compile.js',
  plugins: [
    replace({
      'process.env.NODE_ENV': JSON.stringify('production'),
    }),
    resolve({
      mainFields: ['module', 'main', 'jsnext:main'],
    }),
    commonjs(),
  ],
})
  .then(bundle => {
    bundle.write({
      format: 'cjs',
      file: 'target/google-closure-compiler-js.js',
      strict: false,
    });
  })
  .catch(console.error);

EDIT2: Возможно, это просто проблема с узлом?

Я только что создал /tmp/foo.js:

const rollup = require('rollup').rollup;

и запустил cd /tmp && node foo.js, что приводит к той же ошибке:

internal/modules/cjs/loader.js:796
    throw err;
    ^

Error: Cannot find module 'rollup'
Require stack:
- /tmp/foo.js
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:793:17)
    at Function.Module._load (internal/modules/cjs/loader.js:686:27)
    at Module.require (internal/modules/cjs/loader.js:848:19)
    at require (internal/modules/cjs/helpers.js:74:18)
    at Object.<anonymous> (/tmp/foo.js:1:16)
    at Module._compile (internal/modules/cjs/loader.js:955:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:991:10)
    at Module.load (internal/modules/cjs/loader.js:811:32)
    at Function.Module._load (internal/modules/cjs/loader.js:723:14)
    at Function.Module.runMain (internal/modules/cjs/loader.js:1043:10) {
  code: 'MODULE_NOT_FOUND',
  requireStack: [ '/tmp/foo.js' ]
}

Я пытался npm install -g rollup, но это не помогло. Возможно, узел не ищет глобальные модули в нужном месте?

1 Ответ

1 голос
/ 03 февраля 2020

Ну, я чувствую себя дураком sh.

$ export NODE_PATH=/opt/node-v12.14.1-linux-x64/lib/node_modules/
$ node foo.js
$ echo $?
$ 0

Мне просто нужно было установить NODE_PATH.

...