簡體   English   中英

將 NPM 依賴安裝到不包含 package.json 的文件夾中

[英]Install NPM dependency into folder that does not contain package.json

我有一個看起來像這樣的目錄

/foo

是的,它是一個空文件夾,我想運行

cd foo && npm install bar

但是 npm 抱怨 foo 目錄中沒有 package.json 文件。

如果那里(還)沒有 package.json 文件,是否有一種真正可靠的方法將依賴項安裝到目錄中?

原來,這只是一個警告,而不是一個錯誤,我誤讀了,它說:

npm WARN enoent ENOENT: 沒有這樣的文件或目錄,打開'/home/olegzandr/.suman/package.json'

我想我的問題變成了,有沒有辦法告訴 NPM 忽略丟失的 package.json 文件?

刪除 package-lock.json 為我解決了。

package.json 的主要原因之一是記錄給定應用程序具有的依賴關系。 話雖如此,您可以在目錄中運行npm init以創建 package.json 或使用npm install -g bar全局安裝包。

您可以使用以下命令行:

npm install packegName --loglevel=error

它只會顯示錯誤。 比如下載有問題或者找不到包。

試試這個:

rm -r -f ./node_modules/PACKAGE_NAME && \
mkdir -p ./node_modules/ && \
npm pack PACKAGE_NAME | xargs tar -C ./node_modules -xzf && \
mv ./node_modules/package ./node_modules/PACKAGE_NAME && \
rm PACKAGE_NAME *.tgz

package.json 文件不僅包含您的項目信息,還包含依賴項,這使您的項目自包含和輕松部署。 但是,您仍然可以通過運行npm install bar -g全局安裝沒有 package.json 文件的包,但這不會成為您項目依賴項的一部分,它只會在您的本地機器中。

所以,這個問題實際上取決於你的目的,但正如我提到的,可以在沒有 package.json 文件的情況下全局安裝 npm 包。 如果這是您的目的,當您將項目移動到另一台 PC 或服務器時,您必須再次安裝它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM