“注释处理器支持的源版本'RELEASE_5'是什么意思?”是什么意思?

时间:2012-05-24 13:37:34

标签: java maven annotations sonatype plexus

它是什么意思以及如何删除(重新格式化以获得更好的可读性)?

[INFO] Compiling 30 source files to ...\target\test-classes
[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] Failure executing javac, but could not parse the error:
warning: Supported source version 'RELEASE_5' from annotation processor 
'org.sonatype.guice.bean.scanners.index.QualifiedIndexAPT6' 
less than -source '1.6'
warning: No processor claimed any of these annotations: 
org.junit.Ignore,org.junit.Test,org.junit.BeforeClass

org.sonatype.sisu:sisu-inject-plexus:2.1.1是项目依赖项之一时会发生这种情况。

2 个答案:

答案 0 :(得分:3)

sisu-inject-plexus升级到

后,第一个警告被删除了
<dependency>
  <groupId>org.sonatype.sisu</groupId>
  <artifactId>sisu-inject-plexus</artifactId>
  <version>2.3.0</version>
</dependency>

使用javac编译器的-Xlint:-processing标志后的第二个:

<plugin>
  <artifactId>maven-compiler-plugin</artifactId>
  <executions>
    <execution>
      <id>default-testCompile</id>
      <configuration>
        <compilerArgument>-Xlint:-processing</compilerArgument>
      </configuration>
    </execution>
  <execution>
</plugin>

否则,我们可以使用

<compilerArgument>-proc:none</compilerArgument>

答案 1 :(得分:1)

这里有两个不相关的警告。首先,有一个类声称它想要查看注释,但它只能理解Java 5语法,并且您已在命令行中指定了Java 6语法;第二,你在那里有一些JUnit注释,但没有看到它们。

它们听起来都相当安全,但不幸的是,试图在这里运行javac(是apt?)无法理解输出。