تطوير البرنامج المساعد لـ Eclipse:كيف أحصل على المسارات للمشروع المحدد حاليا؟

StackOverflow https://stackoverflow.com/questions/37692

  •  09-06-2019
  •  | 
  •  

سؤال

أنا أكتب مكونًا إضافيًا يقوم بتحليل مجموعة من الملفات في المشروع.لكن في الوقت الحالي أنا عالق في البحث عبر Eclipse API للحصول على إجابات.

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

public void showSelection(IWorkbenchPart sourcePart) {
    // Gets the currently selected file from the editor
    IFile file = (IFile) workbenchPart.getSite().getPage().getActiveEditor()
        .getEditorInput().getAdapter(IFile.class);
    if (file != null) {
        String path = file.getProjectRelativePath();
        /** Snipped out: Rip out the source path part
         * and replace with build path
         * Then parse it. */
    }
}

المشكلة التي أواجهها هي أنني يجب أن أستخدمها سلاسل مشفرة صعبة للمسارات التي تنتقل إليها الملفات المصدر وملفات البناء.هل يعرف أحد كيفية استرداد مسار البناء من Eclipse؟(أنا أعمل في CDT بالمناسبة).هل هناك أيضًا طريقة بسيطة لتحديد مسار المصدر (على سبيل المثال.ملف واحد موجود ضمن الدليل "src") للملف المصدر؟

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

المحلول

يجب عليك إلقاء نظرة على ICProject, وخاصة عمليات getOutputEntries و getAllSourceRoots. هذا البرنامج التعليمي لديه بعض الأمثلة المختصرة أيضا.أنا أعمل مع JDT، وهذا ما يمكنني فعله تقريبًا.نأمل أن يساعد :)

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