我編寫了一個簡單的'addheader'節點模塊並將其發佈到npm上。它包含了我在的package.json配置文件中註冊的bin屬性如下CLI腳本:npm bin屬性未按預期工作
{
"name" : "addheader",
"bin" : "./addHeaderCli.js"
}
與安裝模塊「故宮安裝的AddHeader」我可以看到CLI腳本在node_modules文件夾如下:
node_modules/.bin/addheader
不幸的是,我不能按預期使用cli。當像這樣運行:
node addheader 'test.txt' 'A header'
它總是失敗,出現以下錯誤:
Error: Cannot find module '/Users/sepp/camp/npmbuild/addheader'
at Function.Module._resolveFilename (module.js:336:15)
at Function.Module._load (module.js:278:25)
at Function.Module.runMain (module.js:501:10)
at startup (node
來看,它提供的路徑工作正常:
./node_modules/.bin/addheader 'test.txt' 'A header'
我請教故宮documentation但我無法弄清楚我做錯了什麼。
順便說一下,我在Mac上運行節點版本0.12.4。
你可以找到npmjs https://www.npmjs.com/package/addheader
我通過將以下行添加到cli文件的頂部來解決該問題:'code'#!/usr/bin/env節點。現在我可以像這樣調整它:'code'addheader'test.txt''我的標題'代碼' –