Electron Build Tools ERROR Error: Failed to run "choco install pywin32 --yes"
- Tan Shuai
- Softwareontwikkeling
- 08 Sep, 2021
Bij het werken met Electron Build Tools, kunt u een fout tegenkomen die te maken heeft met de installatie van pywin32 via Chocolatey. Dit kan frustrerend zijn, vooral als het een vereiste afhankelijkheid voor uw project is. Hieronder vindt u een gedetailleerde uitleg van het probleem en mogelijke stappen om het op te lossen.
De Fout
Bij het initialiseren van een Electron-project met Electron Build Tools, kunt u de volgende foutmelding zien:
E:\\>e init main-testing -i testing --root=e:/src/electron
WARN A fixable error has occurred
--> A required dependency "pywin32" could not be located, it probably has to be installed.
Do you want build-tools to try fix this for you? [y/n]: y
Running "choco install pywin32 --yes"
ERROR Error: Failed to run "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)
Deze fout treedt meestal op omdat het installatieprogramma van het pywin32-pakket de vereiste bestanden op de externe server niet kan vinden. Dit resulteert in een 404-fout, wat aangeeft dat het bestand niet beschikbaar is op de opgegeven URL.
Begrijpen van de Fout
Het belangrijkste deel van de foutmelding is:
ERROR: The remote file either doesn't exist, is unauthorized, or is forbidden 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): "The remote server returned an error: (404) Not Found."
Dit geeft aan dat de download-URL voor pywin32 niet langer geldig is, wat betekent dat Chocolatey de benodigde installatiebestanden niet kan ophalen.
Stappen voor Probleemoplossing
Hier zijn een paar stappen die u kunt nemen om dit probleem op te lossen:
1. Controleer Chocolatey Installatie
Zorg ervoor dat Chocolatey correct is geïnstalleerd en bijgewerkt naar de nieuwste versie. U kunt uw Chocolatey-versie controleren met:
choco --version
Om Chocolatey bij te werken, gebruikt u:
choco upgrade chocolatey
2. Installeer pywin32 Handmatig
Aangezien de geautomatiseerde installatie mislukt, probeer pywin32 handmatig te installeren. U kunt de juiste versie downloaden van de officiële pywin32 GitHub releases pagina en deze handmatig installeren.
3. Wijzig het Installatiescript
Als u controle hebt over het Electron Build Tools-script, kunt u het aanpassen om te verwijzen naar een geldige URL voor pywin32 of het handmatige installatieproces afhandelen.
4. Gebruik een Alternatieve Pakketbeheerder
Als Chocolatey blijft falen, overweeg dan een alternatieve pakketbeheerder zoals pip voor Python-pakketten:
pip install pywin32
Voorbeeld van Handmatige Installatie van pywin32
- Download de juiste pywin32 installer van de officiële GitHub releases.
- Voer de installer uit en volg de installatie-instructies.
- Verifieer de installatie door een eenvoudig Python-script uit te voeren dat pywin32 importeert:
import win32api
print(win32api.GetVersionEx())
Het tegenkomen van de foutmelding "Failed to run choco install pywin32 --yes
" kan een hindernis zijn in je ontwikkelingsproces. Door echter de oorzaak te begrijpen en de hierboven beschreven stappen te volgen, kun je dit probleem overwinnen en doorgaan met je Electron-projectopstelling.