Hyperledger Composer cli from this page をインストールした後、composerコマンドを呼び出そうとしましたが、このエラーが発生しました:
module.js:549
throw err;
^
Error: Cannot find module './api'
at Function.Module._resolveFilename (module.js:547:15)
at Function.Module._load (module.js:474:25)
at Module.require (module.js:596:17)
at require (internal/module.js:11:18)
at Object.<anonymous> (/home/user/.nvm/versions/node/v8.11.1/lib/node_modules/composer-cli/node_modules/node-report/index.js:3:13)
at Module._compile (module.js:652:30)
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)
このコマンドを使用して、Hyperledger Composerをインストールしました。
npm install --unsafe-perm -g composer-cli
何が悪いのかわかりますか?
私の場合、composer-cliをグローバル/usr/lib/node_modules/composer-cli
にインストールし、同じ問題に遭遇しました。何が悪いのかわかりませんが、試しました:
ディレクトリをcomposer-cliに変更します。
cd /usr/lib/node_modules/composer-cli
再インストールノードレポートモジュール、ローカルで内部 composer-cli:
Sudo npm install node-report --unsafe-perm
-g
にSudo npm install
paramを入れず、composer-cli自体のインストールをローカルにしないことに注意してください。
node-report
はmake
をg++
とともに実行して何かをコンパイルし(何らかの理由でcomposer-cliのインストール中には実行されませんでした)、正常に機能します...これでcomposerを実行できます。
代わりに、作業ディレクトリを/home/user/.nvm/versions/node/v8.11.1/lib/node_modules/composer-cli
に設定してください。
答えは
1)ルートまたはSudo(上記のコメントで推奨されている)を使用してインストールしないComposer npmモジュール- prerequisites に従ってnpmの問題が発生します。代わりに、npmインストールのベストプラクティスに従ってください。Sudoまたはrootを使用してインストールしないComposer-常に問題をさらに先に引き起こします。ここのベストプラクティスに従ってください https://docs.npmjs.com/getting-started/fixing-npm-permissions
2)インストールごとにサポートされているnpmバージョン(2018年6月の時点で5.x)がある docs
3)インストール-次に-nvm
を使用してNODEバージョンを管理します-上記のようにNode 8.11.xがサポートされています。NVMの場合- https://を参照してくださいgithub.com/creationix/nvm#installation -インストールします。例:nvm install v8.11.1
2)nvm use 8.11.1
など
4)すでに/以前にインストールしている場合Composer Sudoまたはrootを使用してモジュール-npm uninstall -g
(つまりグローバル)を使用してそのIDを使用して削除し、上記の「ベストプラクティス」に従ってください1)で Composerインストールドキュメント に従ってComposerモジュールのインストール-非常に簡単です。
これらの手順に従う-それは毎回動作します。
私にとっては、完全に拭く
rm -rf /usr/lib/node_modules/composer-cli
と実行npm install -g composer-cli
仕事をしました:)(node-reportの再インストールは機能しませんでした)