如何防止“npm install”或“npm remove”删除我的个人软件包?

Ale*_*lke 6 node.js npm package.json package-lock.json

我想为node_modules/my-package/...我的图书馆之一创建一个环境。

我的package.json认为是有效的。我有一个名字和一个版本以及其他一些字段:

(this is node-modules/my-paclage/package.json)
{
    "name": "my-package",
    "version": "1.0.0",
    ...
}
Run Code Online (Sandbox Code Playgroud)

然后我想将它添加到package-lock.json文件中,以便 npm 知道它。如果你不这样做,一个npm install ...npm uninstall ...实际上删除了my-package我在node-modules/....

所以我决定将信息添加到我的package-lock.json. 我添加的只是这样的版本:

(this is package-lock.json)
...
"dependencies": {
    ...
    "my-package": {
        "version": "1.0.0"
    }
    ...
}
....
Run Code Online (Sandbox Code Playgroud)

同样,语法本身是正确的。但是,通过该条目,当我尝试执行 an npm install ...ornpm uninstall ...它时,它告诉我:

错误 404 未找到:krypton-search@1.0.0

我究竟做错了什么?

Bra*_*rad 5

NPM 管理node_modules/. 您不想在那里手动添加任何内容。

NPM 还管理package-lock.json. 它不是供您修改的。

要安装您的软件包,my-package您想使用npm install. 它会将您的包复制或符号链接到node_modules/,并将安装的版本写出到package-lock.json.

如果你的包是本地的并且没有发布到 NPM,你可以使用npm install /path-to-mypackage. 另见:https : //stackoverflow.com/a/8089029/362536