您现在的位置是:网站首页> NodeJS

nodejs 全局包路径的有时候命令行无效记得加入path

  • NodeJS
  • 2022-08-10
  • 1009人已阅读
摘要

打开:nodejs安装?录/node_modules/npm/.npmrc这个文件件,修改路径

prefix = E:\nodejs\npm_global_modules

查看全局路径

npm config ls

将E:\nodejs\npm_global_modules 加入path以便在别的地方可以执行命令

如pkg打包

pkg的缓存目录:C:\Users\Administrator\.pkg-cached

$ pkg -t win server.js

> pkg@5.6.0

> Fetching base Node.js binaries to PKG_CACHE_PATH

  fetched-v16.14.2-win-x64            [                    ] 0%> Not found in remote cache:

  {"tag":"v3.3","name":"node-v16.14.2-win-x64"}

> Building base binary from source:

  built-v16.14.2-win-x64

> Fetching Node.js source archive from nodejs.org...

> Error! AssertionError [ERR_ASSERTION]: The expression evaluated to a falsy value:

大意是缓存里缺少相应的二进制文件fetched-v16.14.2-win-x64,咱们只要下载到相应的文件,放到相应的缓存目录就好。


去官网下载相应版本文件,比如我的是node-v16.14.2-win-x64

官网地址:https://github.com/vercel/pkg-fetch/releases

1.png


将上一步下载的文件node-v16.14.2-win-x64重命名为fetched-v16.14.2-win-x64,放到当前用户的缓存目录中。


比如我的缓存目录是C:\Users\Administrator\.pkg-cache,拼接上fetch的tag就变成了最终的目录,参照报错中的信息,可以得到tag为v3.3


 {"tag":"v3.3","name":"node-v16.14.2-win-x64"}

当然,你的tag可能和我不一样,看你自己的报错信息把。


咱们可以得到最终的父目录为C:\Users\Administrator\.pkg-cache\v3.3,

所以最终的文件地址为C:\Users\Administrator\.pkg-cache\v3.3\fetched-v16.14.2-win-x64

打包

pkg.cmd -t win main.js



上一篇:实用代码下载

下一篇:nodejs代码加密

Top