Не удалось выполнить цель (generate-scr-scrdescriptor) для проекта Невозможно загрузить скомпилированный класс

У кого-нибудь сталкивался ниже ошибка почему это вызывает.? Я использую приведенную ниже версию плагинов.

   <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-compiler-plugin</artifactId>
      <version>3.2</version>
    </plugin>

<plugin>
                <groupId>org.apache.felix</groupId>
                <artifactId>maven-scr-plugin</artifactId>
                <version>1.20.0</version>
                <executions>
                    <execution>
                        <id>generate-scr-scrdescriptor</id>
                        <goals>
                            <goal>scr</goal>
                        </goals>
                        <configuration>
                            <!-- Private service properties for all services. -->
                            <properties>
                                <service.vendor>Adobe</service.vendor>
                            </properties>
                        </configuration>
                    </execution>
                </executions>
                <configuration>
                           <outputDirectory>${project.build.directory}/classes</outputDirectory>
                </configuration>
                <dependencies>
                    <dependency>
                        <groupId>org.slf4j</groupId>
                        <artifactId>slf4j-simple</artifactId>
                        <version>1.5.11</version>
                    </dependency>
                </dependencies>
            </plugin>

[ОШИБКА] Не удалось выполнить цель org.apache.felix:maven-scr-plugin:1.20.0:scr (generate-scr-scrdescriptor) в проекте osgiexample.core: E:\MY-Work\TESTProj\osgiexample\core\src\main\java\osgiexample\core\servlets\MyDataProviderServlet.java: невозможно загрузить скомпилированный класс: osgiexample.core.servlets.MyDataProviderServlet -> [Помощь 1]

1 ответ

Это означает, что плагин SCR не может найти скомпилированный файл класса, соответствующий файлу MyDataProviderServlet.java

Я видел это только в следующих ситуациях:

  1. У меня были специальные символы в пути к моему проекту, из-за чего плагину SCR не удалось найти скомпилированные классы.
  2. У меня есть *.java файл, но его содержимое было временно закомментировано. Ожидается, что плагин SCR найдет скомпилированный *.class файл, но компилировать было нечего (только комментарии). Это вызвало сообщение об ошибке точно так же, как вы видели.

Вдобавок ко всему, я не могу вспомнить другие случаи, когда файл класса не был бы найден плагином SCR, если плагин Compiler сначала не сработал.

Я бы искал что-то необычное в самом классе Java. Это происходит для других классов с аннотациями SCR или только для этого?

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

Наконец, я бы осмотрел остальную часть сборки Maven. Возможно, вы используете другие плагины, которые могут удалять или иным образом искажать файл класса до запуска плагина SCR?

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