node.js - 使用 npm 构建失败
问题描述
使用 nodejs 构建项目失败
操作系统是 CentOS 7.4.1708 X64
下载并解压 node-v8.12.0-linux-x64.tar.gz 然后,将目录添加到 PATH
[root in ~]# node -v
v8.12.0
[root in ~]# npm -v
6.4.1
我的项目目录是:
[root in /web/www/camp_admin_test/trunk/camp-vue]# ls -l
total 604
drwxr-xr-x 2 root root 4096 Jul 26 17:43 build
drwxr-xr-x 2 root root 4096 Jul 26 17:43 config
drwxr-xr-x 3 root root 4096 Jul 26 17:43 dist
-rw-r--r-- 1 root root 276 Jul 26 17:43 index.html
drwxr-xr-x 998 root root 36864 Jul 26 17:53 node_modules
-rw-r--r-- 1 root root 2435 Jul 26 17:53 package.json
-rw-r--r-- 1 root root 537923 Jul 26 17:53 package-lock.json
-rw-r--r-- 1 root root 557 Jul 26 17:43 README.md
drwxr-xr-x 8 root root 4096 Jul 26 17:43 src
drwxr-xr-x 2 root root 4096 Jul 26 17:43 static
drwxr-xr-x 4 root root 4096 Jul 26 17:43 test
在此目录中,运行npm run dev failed,输出为:
ERROR Failed to compile with 13 errors 18:13:35
This dependency was not found:
* @/pages/common/Nodata in ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/pages/MicLesson/LessionType.vue, ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/pages/MicLesson/Lessions.vue and 11 others
To install it, you can run: npm install --save @/pages/common/Nodata
我听从它的建议:
npm install --save @/pages/common/Nodata
得到这个:
[root in /web/www/camp_admin_test/trunk/camp-vue]# npm install --save @/pages/common/Nodata
npm ERR! code ENOLOCAL
npm ERR! Could not install from "@/pages/common/Nodata" as it does not contain a package.json file.
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2019-07-26T10_14_59_597Z-debug.log
日志文件是:
[root in /web/www/camp_admin_test/trunk/camp-vue]# cat /root/.npm/_logs/2019-07-26T10_14_59_597Z-deb
0 info it worked if it ends with ok
1 verbose cli [ '/usr/local/node-v8.12.0-linux-x64/bin/node',
1 verbose cli '/usr/local/node-v8.12.0-linux-x64/bin/npm',
1 verbose cli 'install',
1 verbose cli '--save',
1 verbose cli '@/pages/common/Nodata' ]
2 info using npm@6.4.1
3 info using node@v8.12.0
4 verbose npm-session ff98e06075a6fb08
5 silly install loadCurrentTree
6 silly install readLocalPackageData
7 silly fetchPackageMetaData error for file:@/pages/common/Nodata Could not install from "@/pages/common/Nodata" as it does not contain a package.json file.
8 timing stage:rollbackFailedOptional Completed in 2ms
9 timing stage:runTopLevelLifecycles Completed in 3929ms
10 verbose stack Error: ENOENT: no such file or directory, open '/web/www/camp_admin_test/trunk/camp-vue/@/pages/common/Nodata/package.json'
11 verbose cwd /web/www/camp_admin_test/trunk/camp-vue
12 verbose Linux 3.10.0-693.2.2.el7.x86_64
13 verbose argv "/usr/local/node-v8.12.0-linux-x64/bin/node" "/usr/local/node-v8.12.0-linux-x64/bin/npm" "install" "--save" "@/pages/common/Nodata"
14 verbose node v8.12.0
15 verbose npm v6.4.1
16 error code ENOLOCAL
17 error Could not install from "@/pages/common/Nodata" as it does not contain a package.json file.
18 verbose exit [ 1, true ]
有什么帮助吗?谢谢你。
解决方案
npm-check-updates 将你的 package.json 依赖升级到最新版本,忽略指定的版本。
运行 npm install 以更新已安装的包和 package-lock.json。
npm i -g npm-check-updates
npm-check-updates -u
npm install --no-bin-links
npm update
npm run dev
有关更多信息,您可以参考 npm 文档:
推荐阅读
- python-3.x - 如何同时运行 scapy 和 netfilterqueue?
- typescript - 如何将枚举键中的方法添加到 Typescript 中的类?
- xaml - 我的 MainTabbedPage.xaml 中没有 xmlns:local
- ios - typealias 泛型函数变量
- powerbi - Power BI DAX 从自定义日期获取上个月的值
- laravel - laravel post 方法不工作。虽然 GET 方法工作
- javascript - 如何使用钩子在组件状态下复制 Redux 存储?
- javascript - 如何将 Vue 变量设置为等于函数参数?
- javascript - 在 JavaScript 中使用 forEach() 函数调用 $el 时出现问题
- php - php日期比较问题,我尝试了很多日期,但它根本不起作用