任何人都面临以下错误。为什么会这样。我正在使用以下版本的插件。
<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-插件:1.20.0:SCR 项目osgiexample.core上的(generate-scr-scrdescriptor): E:\ MY-工作\ TESTProj \ osgiexample \核心的\ src \主\ java的\ osgiexample \核心\ servlet的\ MyDataProviderServlet.java :无法加载编译的类: osgiexample.core.servlets.MyDataProviderServlet - &gt; [帮助1]
答案 0 :(得分:1)
这意味着SCR插件无法找到与文件MyDataProviderServlet.java
对应的已编译类文件
我在以下情况下才发现这种情况:
*.java
文件,但其内容暂时被注释掉了。 SCR插件期望找到一个编译的*.class
文件,但没有任何东西可以编译(只是注释)。这会导致出现与您所看到的错误信息完全相同的错误消息。在我的脑海中,我无法想到其他情况,如果没有编译器插件首先失败,SCR插件将无法找到类文件。
我在Java类中寻找一些不寻常的东西。这种情况会发生在其他具有SCR注释的类中吗?还是只有这个?
下一步,我要查看文件系统。可能是一个奇怪的角色或文件链接混淆插件。
最后,我要检查Maven构建的其余部分。也许你在SCR插件的执行之前使用了可能删除或破坏类文件的其他插件?