Проект Eclipse не распознает артефакты кодекса

Я добавил swagger code-gen в свой проект eclipse, изменив файл pom напрямую:

<plugin>
    <!--
        Plugin that provides API-first development using swagger-codegen to
        generate Spring-MVC endpoint stubs at compile time from a swagger definition file
    -->
    <groupId>io.swagger</groupId>
    <artifactId>swagger-codegen-maven-plugin</artifactId>
    <version>${swagger-codegen-maven-plugin.version}</version>
    <executions>
        <execution>
                <id>generate-swagger-javaclient</id>
                <phase>generate-sources</phase>
                <goals>
                    <goal>generate</goal>
                </goals>
                <configuration>
                    <inputSpec>src/main/resources/swagger/remote-api.json</inputSpec>
                    <language>java</language>
                    <apiPackage>com.myproj</apiPackage>
                    <modelPackage>com.myproj.model</modelPackage>
                    <generateSupportingFiles>true</generateSupportingFiles>
                    <generateApiTests>false</generateApiTests>
                    <configOptions>
                        <dateLibrary>java8</dateLibrary>
                    </configOptions>
                    <library>resttemplate</library>
                </configuration>
            </execution>
        </executions>

</plugin>

Если я запускаю maven update или цель maven generate-sources, я получаю все артефакты, сгенерированные в папке моего / моего / ecliped-sources-swagger / src проекта eclipse. Однако затмение их не распознает. Должен ли я редактировать путь сборки eclipse вручную, как обычные пользователи, или eclipse должен автоматически распознавать эту новую исходную папку?

2 ответа

Решение

В настоящее время ответ заключается в том, что добавление сгенерированной исходной папки в путь сборки кажется обязательным.

Вы можете использовать плагин build-helper-maven, чтобы добавить сгенерированные источники в путь сборки, если сам этот плагин не поддерживает его.

<plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>build-helper-maven-plugin</artifactId>
            <executions>
                <execution>
                    <id>add-source</id>
                    <phase>generate-sources</phase>
                    <goals>
                        <goal>add-source</goal>
                    </goals>
                    <configuration>
                        <sources>
                            <source>${project.basedir}/target/generated-sources/</source>
                        </sources>
                    </configuration>
                </execution>
            </executions>
        </plugin>

В Eclipse 4.9.0 (2018-09) мне пришлось добавить папку сгенерированных источников в качестве исходной папки для проекта следующим образом:

  1. откройте вид "Навигатор"
  2. перейдите к target/generated-sources (или любой другой папке для сгенерированных источников).
  3. щелкните правой кнопкой мыши эту папку
  4. нажмите "Путь сборки" -> "Использовать как исходную папку"

Скриншот дерева меню

Не решает проблему "Выполнение плагина не охвачено конфигурацией жизненного цикла".

Ctrl+ Shift+R

Открывает диалоговое окно "Открыть ресурс". Помимо строки сообщения "Введите имя ресурса..." есть раскрывающийся список. Когда вы нажимаете на нее, вы получаете такие опции, как "показать статус", "показать производные источники" и т. Д.

Вы должны убедиться, что установлен флажок "Показать производные источники". Eclipse также начнет показывать артефакты, сгенерированные чванством.

Другие вопросы по тегам