سؤال

ال وثائق PY2APP يذكر الوصفات ، التي تديرها __boot__.py قبل نص Python الرئيسي. لم أتمكن من العثور على طريقة لتحديد أي primcript بسهولة على ملف SETUP.PY أو عملية الإنشاء.

ومع ذلك تمكنت من "الاختراق" __boot__.py يدويًا وأضف آخر _run(prescript) أمر قبل بلدي الرئيسي _run(main_script) ويبدو أنه يعمل بشكل جيد. ومع ذلك ، سيكون من الأفضل بكثير استخدام عملية بناء PY2APP القياسية.

ما أحاول القيام به بشكل أساسي هو Monkey-Patch Packages.zip ملف قبل إطلاق البرنامج النصي الرئيسي. يتحقق Prescript بشكل أساسي من التحديثات على الخادم ، وإذا كان هناك أي ، يقوم بتنزيلها ، ثم الكتابة فوق ملف packages.zip. أسرع بكثير من الاضطرار إلى إعادة تثبيت التطبيق من نقطة الصفر.

أيه أفكار؟

هل كانت مفيدة؟

المحلول

يرى المستندات: لك py2app.recipes يجب أن تحتوي الحزمة على وصفة check الطريقة إرجاع أ dict بما في ذلك 'prescripts' المفتاح الذي تكون قيمته ، وأنا أقتبس ،

قائمة البرامج النصية Python الإضافية لتشغيلها قبل تهيئة البرنامج النصي الرئيسي. غالبًا ما يتم استخدام هذا في الوحدات النمطية المتضمنة في القرد بحيث تعمل في بيئة مجمدة. قد تكون الوصفات هي أسماء الوحدات أو أسماء الملفات أو الكائنات التي تشبه الملفات التي تحتوي على رمز Python (مثل Stringio). لاحظ أنه إذا تم استخدام كائن يشبه الملف ، فلن يتم فحصه حاليًا للحصول على تبعيات إضافية.

يرى مصادر الوصفات المدمجة للحصول على أمثلة. هذه الحزمة (كما هو مثبت على جهازك) هي المكان الذي ستحتاج إلى إضافة وصفات مخصصة خاصة بك.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top