Type something to search...

أدوات بناء إلكترون ERROR Error: Failed to run "choco install pywin32 --yes"

عند العمل باستخدام أدوات بناء Electron، قد تواجه خطأ يتعلق بتثبيت pywin32 عبر Chocolatey. قد يكون هذا محبطًا، خاصة عندما تكون هذه حزمة مطلوبة لمشروعك. أدناه تجد شرحًا مفصلًا للمشكلة وخطوات محتملة لحلها.

الخطأ

عند تهيئة مشروع Electron باستخدام أدوات بناء Electron، قد ترى رسالة الخطأ التالية:

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)

يحدث هذا الخطأ عادة لأن نص تثبيت حزمة pywin32 لا يمكنه العثور على الملفات المطلوبة على الخادم البعيد. وهذا يؤدي إلى خطأ 404، مما يشير إلى أن الملف غير متاح في عنوان URL المحدد.

فهم الخطأ

الجزء الأساسي من رسالة الخطأ هو:

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."

هذا يشير إلى أن عنوان URL لتنزيل pywin32 لم يعد صالحًا، مما يعني أن Chocolatey لا يمكنه استرجاع ملفات التثبيت اللازمة.

خطوات استكشاف الأخطاء وإصلاحها

إليك بعض الخطوات التي يمكنك اتخاذها لحل هذه المشكلة:

1. التحقق من تثبيت Chocolatey

تأكد من تثبيت Chocolatey بشكل صحيح وتحديثه إلى أحدث إصدار. يمكنك التحقق من إصدار Chocolatey باستخدام:

choco --version

لتحديث Chocolatey، استخدم:

choco upgrade chocolatey

2. تثبيت pywin32 يدويًا

نظرًا لفشل التثبيت التلقائي، حاول تثبيت pywin32 يدويًا. يمكنك تنزيل الإصدار المناسب من صفحة إصدارات pywin32 على GitHub وتثبيته يدويًا.

3. تعديل نص التثبيت

إذا كان لديك سيطرة على نص أدوات بناء Electron، يمكنك تعديله للإشارة إلى عنوان URL صالح لـ pywin32 أو التعامل مع عملية التثبيت اليدوي.

4. استخدام مدير حزم بديل

إذا استمر فشل Chocolatey، فكر في استخدام مدير حزم بديل مثل pip لحزم Python:

pip install pywin32

مثال على التثبيت اليدوي لـ pywin32

  1. قم بتنزيل المثبت المناسب لـ pywin32 من الإصدارات الرسمية على GitHub.
  2. شغل المثبت واتبع تعليمات التثبيت.
  3. تحقق من التثبيت عن طريق تشغيل برنامج Python بسيط يستورد pywin32:
import win32api
print(win32api.GetVersionEx())

يمكن أن يكون مواجهة خطأ "Failed to run choco install pywin32 --yes" عقبة في عملية التطوير الخاصة بك. ومع ذلك، من خلال فهم السبب الجذري واتباع الخطوات المذكورة أعلاه، يمكنك التغلب على هذه المشكلة والاستمرار في إعداد مشروع Electron الخاص بك.

مقال ذو صلة

AWS CodeCommit: البديل المجاني لتخزين الملفات الكبيرة في GitHub (Git LFS)

\nتقدم AWS CodeCommit بديلاً قويًا لخدمة تخزين الملفات الكبيرة من GitHub (Git LFS)، مما يوفر حلاً فعالاً لإدارة الملفات الكبيرة في مستودعات Git الخاصة بك. لماذا يجب إعادة النظر في استخدام Git LFS

اقرأ المزيد

تحويل Markdown بسرعة إلى PDF على طراز الأكاديمية في macOS

في هذا الدليل، سأرشدك حول كيفية تحويل مستندات Markdown إلى ملفات PDF بأسلوب أكاديمي على نظام macOS باستخدام Pandoc و BasicTeX. هذه الطريقة سريعة وبسيطة، ومثالية عندما تحتاج إلى إنشاء ملفات PDF بمظهر

اقرأ المزيد

احصل على معرف الالتزام الحالي لـ Git وقم بتحديثه إلى package.json

عند تطوير مشروع Node.js، قد ترغب في تتبع معرف الالتزام الحالي لمستودع Git الخاص بك. يمكن أن تكون هذه المعلومات مفيدة لأغراض التصحيح، أو الترقيم، أو النشر. إحدى الطرق لتحقيق ذلك هي تحديث ملف `package.

اقرأ المزيد

ترحيل مستودع GitHub LFS (Git Large File Storage) إلى AWS CodeCommit

لقد قمت مؤخرًا بنقل أحد مستودعات GitHub الخاصة بي، والذي يستخدم Git Large File Storage (LFS)، إلى AWS CodeCommit. اعتقدت أنه سيكون من المفيد مشاركة هذه العملية معكم في حال كنتم تفكرون في القيام بشيء

اقرأ المزيد

إعادة تعيين/استعادة جميع الدلائل الفرعية في Git

إدارة مستودع Git بفعالية تتطلب غالبًا إعادة ضبط أو استعادة الدلائل الفرعية للحفاظ على قاعدة كود نظيفة وعملية. يوفر هذا الدليل نهجًا موجزًا خطوة بخطوة لإعادة ضبط أو استعادة جميع الدلائل الفرعية في مست

اقرأ المزيد