2014-01-21 78 views
3

我創建了本地NPM軟件包,我試圖使用下面的命令安裝本地軟件包「npm install ../replacevalue /replacevalue-0.1.1tgz」。Node.js - NPM pacakge在本地發佈併爲Node.js應用程序安裝本地發佈的NPM軟件包

這是給我休耕的錯誤。 我的議程是「本地測試我的npm模塊而不將它們發佈到npmjs.org」。

0 info it worked if it ends with ok 
    1 verbose cli [ 'D:\\Program Files\\nodejs\\\\node.exe', 
    1 verbose cli 'D:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js', 
    1 verbose cli 'install', 
    1 verbose cli '../replacevalue/replacevalue-0.1.1tgz' ] 
    2 info using [email protected] 
    3 info using [email protected] 
    4 verbose node symlink D:\Program Files\nodejs\\node.exe 
    5 verbose readDependencies using package.json deps 
    6 verbose cache add [ '../replacevalue/replacevalue-0.1.1tgz', null ] 
    7 verbose cache add name=undefined spec="../replacevalue/replacevalue-0.1.1tgz" args=["../replacevalue/replacevalue-0.1.1tgz",null] 
    8 verbose parsed url { protocol: null, 
    8 verbose parsed url slashes: null, 
    8 verbose parsed url auth: null, 
    8 verbose parsed url host: null, 
    8 verbose parsed url port: null, 
    8 verbose parsed url hostname: null, 
    8 verbose parsed url hash: null, 
    8 verbose parsed url search: null, 
    8 verbose parsed url query: null, 
    8 verbose parsed url pathname: '../replacevalue/replacevalue-0.1.1tgz', 
    8 verbose parsed url path: '../replacevalue/replacevalue-0.1.1tgz', 
    8 verbose parsed url href: '../replacevalue/replacevalue-0.1.1tgz' } 
    9 silly lockFile 11fd2abd-placevalue-replacevalue-0-1-1tgz ../replacevalue/replacevalue-0.1.1tgz 
    10 verbose lock ../replacevalue/replacevalue-0.1.1tgz C:\Users\mgowd1\AppData\Roaming\npm-cache\11fd2abd-placevalue-replacevalue-0-1-1tgz.lock 
    11 silly lockFile 11fd2abd-placevalue-replacevalue-0-1-1tgz ../replacevalue/replacevalue-0.1.1tgz 
    12 silly lockFile 11fd2abd-placevalue-replacevalue-0-1-1tgz ../replacevalue/replacevalue-0.1.1tgz 
    13 error addLocal Could not install ../replacevalue/replacevalue-0.1.1tgz 
    14 error Error: ENOENT, stat 'C:\node\replacevalue\replacevalue-0.1.1tgz' 
    15 error If you need help, you may report this log at: 
    15 error  <http://github.com/isaacs/npm/issues> 
    15 error or email it to: 
    15 error  <[email protected]> 
    16 error System Windows_NT 6.1.7601 
    17 error command "D:\\Program Files\\nodejs\\\\node.exe" "D:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "install" "../replacevalue/replacevalue-0.1.1tgz" 
    18 error cwd C:\node\Node_Odin 
    19 error node -v v0.10.22 
    20 error npm -v 1.3.14 
    21 error path C:\node\replacevalue\replacevalue-0.1.1tgz 
    22 error code ENOENT 
    23 error errno 34 
    24 verbose exit [ 34, true ] 

回答

8

您想要使用npm link

npm link允許您在文件系統上「安裝」一個目錄,就像它是一個包一樣。它創建了一個符號鏈接,這意味着您只需運行一次該包即可始終保持「最新」狀態。

要使用它,請導航到您要使用新軟件包的項目,然後運行npm link /some/directory/path/to/your/package

+0

當你嘗試在我的包上運行「npm鏈接」時,出現以下錯誤。 npm ERR!錯誤:ENOENT,chmod'C:\ Users \ mgowd1 \ AppData \ Roaming \ npm \ node_modules \ replacevalue \ bin \ replacevalue' – Manu

+0

ENOENT是'無法找到文件'的代碼。看起來在該路徑的中間有一個空間。你能粘貼你正在運行的確切命令嗎? –

+0

這個答案假設用戶在Linux上。節點符號鏈接應該但不使用連接,因此具有管理權限的用戶禁止使用連接。它搞砸了,但它的方式。 npm鏈接不是一個好的解決方案。 –