Программное добавление исходной папки из подключаемого модуля Eclipse

Я разрабатываю коннектор m2e для плагина maven, который фактически генерирует некоторые исходные коды. Мне нужно добавить сгенерированные источники (папку) в рабочую область в качестве исходной папки.

Я использовал JavaCore для редактирования файла .classpath:

    IJavaProject javaProject = JavaCore.create(proj);
    IClasspathEntry[] entries = javaProject.getRawClasspath();

    IClasspathEntry[] newEntries = new IClasspathEntry[entries.length + 1];
    System.arraycopy(entries, 0, newEntries, 0, entries.length);

    Path myPath = new Path("target/generated-sources");
    IClasspathEntry myEntry = JavaCore.newSourceEntry(myPath);

    newEntries[entries.length] = JavaCore.newSourceEntry(myEntry.getPath());
    javaProject.setRawClasspath(newEntries, null);

Но этот код не работает, он говорит: Путь для IClasspathEntry должен быть абсолютным

Если я пытался использовать абсолютный путь, он был записан в .classpath, но в eclipse он не отображался как исходная папка.

Есть ли какие-нибудь предложения? Это должна быть простая задача, но я не могу понять, как ее решить.

7
задан Jan Záruba 3 November 2011 в 20:20
поделиться