Npm 错误! npm install 上的版本无效

问题描述 投票:0回答:8

每当我运行 npm install 时,我都会得到

npm ERR! Invalid Version:

这是日志文件。

43 verbose stack TypeError: Invalid Version: 
43 verbose stack     at new SemVer (C:\Users\Myself\AppData\Roaming\npm\node_modules\npm\node_modules\semver\classes\semver.js:38:13)
43 verbose stack     at compare (C:\Users\Myself\AppData\Roaming\npm\node_modules\npm\node_modules\semver\functions\compare.js:3:32)
43 verbose stack     at Object.gte (C:\Users\Myself\AppData\Roaming\npm\node_modules\npm\node_modules\semver\functions\gte.js:2:30)
43 verbose stack     at Node.canDedupe (C:\Users\Myself\AppData\Roaming\npm\node_modules\npm\node_modules\@npmcli\arborist\lib\node.js:1054:32)
43 verbose stack     at PlaceDep.pruneDedupable (C:\Users\Myself\AppData\Roaming\npm\node_modules\npm\node_modules\@npmcli\arborist\lib\place-dep.js:465:14)
43 verbose stack     at PlaceDep.placeInTree (C:\Users\Myself\AppData\Roaming\npm\node_modules\npm\node_modules\@npmcli\arborist\lib\place-dep.js:326:14)
43 verbose stack     at PlaceDep.place (C:\Users\Myself\AppData\Roaming\npm\node_modules\npm\node_modules\@npmcli\arborist\lib\place-dep.js:214:10)
43 verbose stack     at new PlaceDep (C:\Users\Myself\AppData\Roaming\npm\node_modules\npm\node_modules\@npmcli\arborist\lib\place-dep.js:71:10)
43 verbose stack     at C:\Users\Myself\AppData\Roaming\npm\node_modules\npm\node_modules\@npmcli\arborist\lib\arborist\build-ideal-tree.js:965:31
43 verbose stack     at Array.map (<anonymous>)
44 verbose cwd C:\Users\Dont\Want\To\Reveal\This\Information
45 verbose Windows_NT 10.0.19042
46 verbose argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\Myself\\AppData\\Roaming\\npm\\node_modules\\npm\\bin\\npm-cli.js" "i" "-force"
47 verbose node v16.14.0
48 verbose npm  v8.5.1
49 error Invalid Version: 
50 verbose exit 1
51 timing npm Completed in 18500ms

我不明白什么版本无效?救命!

npm version
8个回答
33
投票

删除

node_modules
package-lock.json (OR yarn.lock)
为我解决了这个问题。


5
投票

删除

package-lock.json
node_modules/.package-lock.json
,然后再次运行
npm install
命令。

这为我解决了问题,而无需删除并重新下载所有正确安装的模块。


3
投票

试试这个

  • 删除文件夹
    npm_modules
  • 删除文件
    package.json.lock
  • npm cache clean --force

然后再次尝试安装


2
投票

我也遇到了与 [电子邮件受保护] 相同的错误。通过降级至 [电子邮件受保护] 修复。


1
投票

解决方案: 如果您检查项目根目录中的“package.json”文件,它可能缺少以下一个或全部属性:

  1. 名字
  2. 版本

对于版本,它必须采用“x.x.x”形式,即在我的(也可能是你的)情况下“1.0.0”

对于名称,您可以从“app.json”获取它,例如在我的例子中:

{                                                                                                                                                                   
     "expo": {
       "name": "the-10-min",
       "slug": "the-10-min",
       "privacy": "public",
       "platforms": [
         "ios",
         "android",
         "web"
      ],

所以在我的例子中,“package.json”文件中的 name 属性将是“the-10-min” .插入名称和版本的值,然后运行命令“npm install”


0
投票

您还应该确保 app.json 和 package.json 中的名称属性相同 - 它们在我的中不同并导致了错误


0
投票

克隆旧项目后遇到类似的问题。尝试了所有这些解决方案,但没有一个有效。事实证明我的问题是由于已弃用的软件包版本造成的。我将它们全部删除并逐渐添加它们,直到找出哪些给我带来了问题。幸运的是,这些软件包的新版本都可以。


0
投票

如果错误仍然存在,您应该像我一样从 package.json 中删除版本密钥内容。

“名称”:“应用程序名称”,“版本”: “私有”:true,“依赖项”:{ “@headlessui/react”:“^1.7.4”, "@heroicons/react": "^2.0.13", “@testing-library/jest-dom”:“^5.16.5”,“@testing-library/react”:“^13.4.0”,“@testing-library/user-event”:“^13.5.0 “, "browserify-fs": "^1.0.0", “firebase”:“^9.12.0”, “反应”:“^18.2.0”, "react-dom": "^18.2.0", "react-firebase-hooks": "^5.0.3", "react-popover": "^0.5.10", "react-router-dom": "^6.4.2", “反应脚本”:“5.0.1”, "sloc": "^0.2.1", “网络生命”:“^2.1.4” },

© www.soinside.com 2019 - 2024. All rights reserved.