برنامه نویسی

نحوه رفع خطای “چندین دستورات تولید” در Xcode

مقدمه

اگر با ناامید کننده روبرو شده اید خطای “چند دستورات تولید می کند” در Xcode ، شما تنها نیستید. توسعه دهندگان غالباً هنگام کار روی پروژه های خود با این مسئله روبرو هستند ، به ویژه هنگامی که ناسازگاری در پیکربندی پرونده های منابع مانند وجود دارد Info.plist و پرونده های محلی سازی مانند Chat.stringsdataبشر این مقاله با هدف ارائه یک راهنمای جامع در مورد درک علل این خطا و چگونگی رفع آن به طور مؤثر ارائه شده است. بیایید به آن شیرجه بزنیم!

درک مسئله

در خطای “چند دستورات تولید می کند” به طور معمول در مرحله ساخت در Xcode بوجود می آید. این اتفاق می افتد که سیستم ساخت برای همان کار ، خروجی های متناقض را تشخیص دهد ، که ممکن است با تنظیمات ساختگی یا منابع ساختگی نادرست ایجاد شود. در مورد شما ، به نظر می رسد که به Info.plist وت Chat.stringsdata پرونده ها

چرا این اتفاق می افتد

دلایل متداول شامل موارد زیر است:

  1. ورودی های تکراری: داشتن بیش از یک مرجع به همان فایل منابع در تنظیمات پروژه خود ، به ویژه در بخش “منابع بسته نرم افزاری”.
  2. اصلاحات دستی: اصلاح پرونده ها به صورت دستی یا به درستی پیکربندی XCode برای تشخیص تغییرات می تواند منجر به اختلاف شود.
  3. مسائل داده شده مشتق شده: بعضی اوقات ، مصنوعات ساخت قدیمی ذخیره شده در داده های مشتق شده می توانند در طی فرآیند کامپایل باعث سردرگمی شوند.

درک هسته اصلی این موضوعات می تواند به شما در جلوگیری از خطاهای مشابه در آینده کمک کند.

راه حل گام به گام

مرحله 1: ساخت خود را تمیز کنید

اول ، تمیز کردن پوشه ساخت در Xcode ضروری است. این عمل هرگونه داده ذخیره شده را از بین می برد و ممکن است برخی از خطاها را برطرف کند.

  • رفتن به منوی ککبشر
  • روی کلیک کنید محصول > پوشه ساخت تمیز (یا فشار دهید Shift + Command + K).

مرحله 2: مراحل ساخت را بررسی کنید

بعد ، خود را بازرسی کنید مراحل ساختن برای اطمینان از وجود منابع تکراری:

  1. پروژه خود را در XCode Navigatorبشر
  2. هدف خود را انتخاب کنید.
  3. رفتن به مراحل ساختن برگه.
  4. گسترش منابع بسته را کپی کنیدبشر

ورودی های تکراری را حذف کنید

جستجو کردن Info.plist یا Chat.stringsdata در این لیست اگر نسخه های تکراری را مشاهده کردید ، ورودی های اضافی را حذف کنید. فقط باید یک مرجع واحد برای هر پرونده وجود داشته باشد. اگر قبلاً اضافه شده اید Info.plist به صورت دستی و باعث ایجاد مشکل می شود ، اگر به درستی در تنظیمات پروژه تنظیم شود ، آن را حذف کنید.

مرحله 3: تأیید اطلاعات. پیکربندی پلیست

اطمینان حاصل کنید که اطلاعات پرونده به درستی پیکربندی شده است:

  • بررسی کردن هویت بخش تحت تنظیمات هدف پروژه شما. پرونده PLIST باید به درستی در اینجا ارجاع شود.
  • اطمینان حاصل کنید که مسیر پرونده به سمت شما Info.plist دقیق است

مرحله 4: پرونده های محلی سازی را بررسی کنید

برای Chat.stringsdata، بررسی کنید که آیا بیش از یک بار در منابع گنجانده شده است. شبیه اطلاعات، فقط باید یک بار ارجاع شود:

  • در منابع بسته را کپی کنید، اطمینان حاصل کنید که Chat.stringsdata پرونده به طور تصادفی چندین بار کپی نمی شود.

مرحله 5: داده های مشتق شده را حذف کنید

گاهی اوقات راه حل شامل پاکسازی عمیق تر است:

  1. بستن Xcode.
  2. به سمت ~/کتابخانه/توسعه دهنده/xcode/deristedDataبشر با استفاده از این پوشه در Finder می توانید به این پوشه دسترسی پیدا کنید Command + Shift + G و ورود به مسیر.
  3. کل را حذف کنید DerivedData پوشه
  4. پروژه Xcode خود را دوباره باز کنید و دوباره بسازید.

مرحله ششم: یک بازسازی کامل انجام دهید

سرانجام ، پس از انجام همه تغییرات ، یک بازسازی کامل انجام دهید:

  • روی کلیک کنید محصول > ساخت (یا فشار دهید Command + B). این تضمین می کند که Xcode همه پرونده ها را مجدداً ارزیابی می کند ، و مواردی را که ممکن است قبلاً نادیده گرفته شود ، تشخیص می دهد.

سوالات متداول

Q1: “دستورات متعدد تولید می کنند” به چه معنی است؟

A1: این بدان معنی است که Xcode دو یا چند دستور ساخت را پیدا کرده است که همان پرونده خروجی را تولید می کنند و باعث درگیری می شوند.

Q2: چگونه می توانم از این خطا در پروژه های آینده جلوگیری کنم؟

A2: همیشه تنظیمات پروژه خود را بررسی کنید و اطمینان حاصل کنید که منابع قبل از ساخت ، بدون نسخه ، بدون نسخه ، به درستی گنجانده شده اند. به طور منظم حفظ پروژه شما می تواند به جلوگیری از چنین مواردی کمک کند.

Q3: آیا باید اطلاعات را در مراحل ساخت نگه دارم؟

A3: بله ، اما برای جلوگیری از خطا فقط باید یک مرجع واحد داشته باشد. اطمینان حاصل کنید که به درستی با تنظیمات هدف شما مرتبط است.

پایان

پیمایش فرآیند ساخت Xcode می تواند چالش برانگیز باشد ، به خصوص با خطاهایی مانند “چندین دستورات تولید می کنند” برداشتن با رعایت مراحل ذکر شده در بالا ، باید بتوانید این درگیری ها را به طور مؤثر برطرف کنید. مراحل ساخت خود را سازمان یافته و به طور معمول محیط های پروژه خود را تمیز کنید تا خطاهای آینده به حداقل برسد. با توجه به جزئیات ، بهره وری خود را ارتقا می بخشید و یک گردش کار توسعه ای نرم تر را حفظ می کنید.

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا