我在package.json中有一个带依赖项的项目。当我使用npm install
安装时,我会在~/.npm
中安装软件包,但不会在当前文件夹node_modules
中安装。
NPM正在创建node_modules
,但不会在那里安装包。 .staging
中有一个node_modules
文件夹,其中包含项目的所有软件包,但在检索后它们不会被移出。
使用Node v6.9.1 / npm v3.10.8。
除了当前目录之外,目录中没有安装任何其他项目/ node_modules,尽管父目录中也有一个package.json。但是,在父目录中不会创建node_modules
目录。
奇怪的是,当我手动安装像npm install @angular/core
这样的软件包时,它的安装没有问题。
这是在Ubuntu 16.04上。
的package.json:
{
"name": "",
"version": "0.5.0",
"description": "website (Angular2/NodeJS)",
"main": "main.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "John Halbert <https://halbert.tech> (john@halbert.tech)",
"license": "SEE LICENSE IN LICENSE.md",
"dependencies": {
"@angular/common": "^2.1.1",
"@angular/compiler": "^2.1.1",
"@angular/core": "^2.1.1",
"@angular/forms": "^2.1.1",
"@angular/http": "^2.1.1",
"@angular/platform-browser": "^2.1.1",
"@angular/platform-browser-dynamic": "^2.1.1",
"@angular/router": "^3.1.1",
"core-js": "^2.4.1",
"reflect-metadata": "^0.1.8",
"systemjs": "^0.19.39",
"zone.js": "^0.6.26"
},
"devDependencies": {
"concurrently": "^3.1.0",
"typings": "^1.4.0"
}
}
答案 0 :(得分:0)
尝试运行
echo "" > $(npm config get userconfig)
npm config edit
要查看是否更改了节点模块的默认文件夹,如果是,您可以通过执行
重置配置echo "" > $(npm config get globalconfig)
npm config --global edit
答案 1 :(得分:0)
在做了更多研究之后,我的服务器看起来这是一个内存问题。在具有128Mb RAM的低端VPS上运行。
关于如何处理这个问题,有一些建议。我发现其他人建议将npm config set jobs 1
作为一种限制内存使用的方法,但这对我没有用。其他人建议添加(更多)交换,这是我的托管服务提供商不允许的。
npm进程实际上已被杀死,所以看起来这可能是罪魁祸首。