Electron Build Tools ERROR Error: Failed to run "choco install pywin32 --yes"
- Tan Shuai
- Softwareudvikling
- 08 Sep, 2021
Når du arbejder med Electron Build Tools, kan du støde på en fejl relateret til installationen af pywin32 via Chocolatey. Dette kan være frustrerende, især når det er en nødvendig afhængighed for dit projekt. Nedenfor er en detaljeret forklaring af problemet og mulige trin til at løse det.
Fejlen
Når du initialiserer et Electron-projekt ved hjælp af Electron Build Tools, kan du se følgende fejlmeddelelse:
E:\\>e init main-testing -i testing --root=e:/src/electron
WARN En rettelig fejl er opstået
--> En nødvendig afhængighed "pywin32" kunne ikke findes, det skal sandsynligvis installeres.
Vil du have, at build-tools skal forsøge at rette dette for dig? [y/n]: y
Kører "choco install pywin32 --yes"
ERROR Fejl: Kunne ikke køre "choco install pywin32 --yes"
at spawnSyncWithLog (C:\\Users\\zeeis\\.electron_build_tools\\src\\utils\\deps-check.js:11:11)
at fix (C:\\Users\\zeeis\\.electron_build_tools\\src\\utils\\deps-check.js:39:9)
at maybeAutoFix (C:\\Users\\zeeis\\.electron_build_tools\\src\\utils\\maybe-auto-fix.js:13:3)
at whichAndFix (C:\\Users\\zeeis\\.electron_build_tools\\src\\utils\\which.js:10:5)
at checkPlatformDependencies (C:\\Users\\zeeis\\.electron_build_tools\\src\\utils\\deps-check.js:61:7)
at Object.<anonymous> (C:\\Users\\zeeis\\.electron_build_tools\\src\\e-init.js:165:3)
at Module._compile (internal/modules/cjs/loader.js:1072:14)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1101:10)
at Module.load (internal/modules/cjs/loader.js:937:32)
at Function.Module._load (internal/modules/cjs/loader.js:778:12)
Denne fejl opstår typisk, fordi installationsscriptet for pywin32-pakken ikke kan finde de nødvendige filer på fjernserveren. Dette resulterer i en 404-fejl, hvilket indikerer, at filen ikke er tilgængelig på den angivne URL.
Forstå fejlen
Den vigtige del af fejlmeddelelsen er:
ERROR: Den eksterne fil findes enten ikke, er uautoriseret eller forbudt for URL 'http://sourceforge.net/projects/pywin32/files/pywin32/Build%20219/pywin32-219.win-amd64-py3.9.exe/download'. Exception calling "GetResponse" with "0" argument(s): "Den eksterne server returnerede en fejl: (404) Ikke fundet."
Dette indikerer, at download-URL'en for pywin32 ikke længere er gyldig, hvilket betyder, at Chocolatey ikke kan hente de nødvendige installationsfiler.
Fejlfindingstrin
Her er et par trin, du kan tage for at løse dette problem:
1. Bekræft Chocolatey-installation
Sørg for, at Chocolatey er korrekt installeret og opdateret til den nyeste version. Du kan tjekke din Chocolatey-version med:
choco --version
For at opdatere Chocolatey skal du bruge:
choco upgrade chocolatey
2. Installer pywin32 manuelt
Da den automatiske installation fejler, kan du prøve at installere pywin32 manuelt. Du kan downloade den passende version fra den officielle pywin32 GitHub releases page og installere den manuelt.
3. Ændre installationsscriptet
Hvis du har kontrol over Electron Build Tools-skriptet, kan du ændre det til at pege på en gyldig URL for pywin32 eller håndtere den manuelle installationsproces.
4. Brug en alternativ pakkemanager
Hvis Chocolatey fortsat fejler, overvej at bruge en alternativ pakkemanager som pip til Python-pakker:
pip install pywin32
Eksempel på manuel installation af pywin32
- Download den passende pywin32-installationsprogram fra officielle GitHub-udgivelser.
- Kør installationsprogrammet og følg installationsinstruktionerne.
- Bekræft installationen ved at køre et simpelt Python-script, der importerer pywin32:
import win32api
print(win32api.GetVersionEx())
At støde på fejlen "Failed to run choco install pywin32 --yes
" kan være en forhindring i din udviklingsproces. Men ved at forstå årsagen og følge de ovenstående trin kan du overvinde dette problem og fortsætte med opsætningen af dit Electron-projekt.