reactjs - Ingen Next.js-version kunde upptäckas i ditt projekt. Se till att `"next"` är installerad i "dependencies" eller "devDependencies"
Jag försöker distribuera en Next-app med Vercel CLI. Jag har kört vercel build och det slutfördes framgångsrikt utan några fel - kontexten ges nedan. Jag har kört vercel deploy --prebuilt-kommandot och det distribuerades utan några fel. När jag försöker flytta projektet från förhandsgranskningsmiljön till produktionsmiljön får jag ett fel
Error: No Next.js version could be detected in your project. Make sure `"next"` is installed in "dependencies" or "devDependencies"
detta är min package.json
{
"name": "portfolio-website",
"version": "0.1.0",
"private": true,
"scripts": {
"dev": "next dev",
"build": "next build",
"start": "next start",
"lint": "next lint"
},
"dependencies": {
"@heroicons/react": "^2.0.12",
"@next/swc-darwin-x64": "^12.3.2",
"framer-motion": "^7.6.2",
"next": "^12.2.4",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-hook-form": "^7.38.0",
"react-simple-typewriter": "^4.0.5",
"react-social-icons": "^5.15.0"
},
"devDependencies": {
"@types/node": "18.11.7",
"@types/react": "18.0.24",
"@types/react-dom": "18.0.8",
"autoprefixer": "^10.4.12",
"eslint": "8.26.0",
"eslint-config-next": "13.0.0",
"postcss": "^8.4.18",
"tailwind-scrollbar": "^2.0.1",
"tailwindcss": "^3.2.1",
"typescript": "4.8.4"
},
"optionalDependencies": {
"@next/swc-linux-x64-gnu": "12.3.2"
}
}
Jag hade också felet - för sammanhanget
warn - Attempted to load @next/swc-darwin-x64, but it was not installed
error - Failed to load SWC binary for darwin/x64, see more info here: https://nextjs.org/docs/messages/failed-loading-swc
info - Creating an optimized production build .Error: Command "npm run build" exited with
Jag var tvungen att radera min package.lock.json-fil och node_modules och köra npm i @next/swc-darwin-x64 och npm i även om beroendet vid den tiden redan fanns i min lock-fil.
Jag har också försökt att nedgradera min nästa version men utan resultat.
Har försökt distribuera direkt från mitt git-förråd men jag får också samma fel
[22:29:17.748] Cloning github.com/xxxxx/xxxxxx (Branch: main, Commit: 0fb5a5a)
[22:29:18.540] Cloning completed: 791.508ms
[22:29:19.131] Looking up build cache...
[22:29:19.371] Build Cache not found
[22:29:19.420] Running "vercel build"
[22:29:20.057] Vercel CLI 28.4.12-05a80a4
[22:29:20.485] Installing dependencies...
[22:29:21.273] npm ERR! code EBADPLATFORM
[22:29:21.275] npm ERR! notsup Unsupported platform for @next/[email : wanted {"os":"darwin","arch":"x64"} (current: {"os":"linux","arch":"x64"})
[22:29:21.276] npm ERR! notsup Valid OS: darwin
[22:29:21.276] npm ERR! notsup Valid Arch: x64
[22:29:21.276] npm ERR! notsup Actual OS: linux
[22:29:21.276] npm ERR! notsup Actual Arch: x64
[22:29:21.279]
[22:29:21.279] npm ERR! A complete log of this run can be found in:
[22:29:21.279] npm ERR! /vercel/.npm/_logs/2022-11-02T21_29_20_898Z-debug-0.log
[22:29:21.290] Warning: Could not identify Next.js version, ensure it is defined as a project dependency.
[22:29:21.364] Error: No Next.js version could be detected in your project. Make sure `"next"` is installed in "dependencies" or "devDependencies"
Svar #1
Jag stötte på detta och löste det genom att rensa det jag hade lagt i inställningen "Root Directory" i min Vercel-konfiguration.
Jag felsökte något annat och hade ställt in det på "src", vilket fick detta att börja dyka upp. När jag satte tillbaka det till inget fungerade distributionerna igen
Svar #2
Det händer vanligtvis eftersom Vercel inte kan hitta dina filer om du har all kod i en underkatalog och inte i rotkatalogen. till exempel: my-app > my-app-real > package.json
Vercel kommer bara att kontrollera den yttre katalogen (my-app) och därför kasta ett fel.
Du kan fixa detta genom att gå till Vercel-instrumentpanelen för ditt projekt > Inställningar > Allmänt > Rotkatalog > (skriv namnet på undermappen som innehåller all kod, för ovanstående exempel skulle jag skriva: my-app-real)
Detta kommer att lösa problemet! Hoppas detta hjälper.