这是最烦人的错误之一?我能理解的是我使用较低版本的Java进行编译。如何为maven指定java版本?
无法执行目标 org.apache.maven.plugins:Maven的编译器插件:2.0.2:编译 项目上的(默认编译) springAopMavenDemo:编译 失败D:\ JAVA 东西\项目\ springAopMavenDemo的\ src \主\ java的\服务\ EmployeeServiceImpl.java:13.1] 。不支持注释 -source 1.3(使用-source 5或更高版本来启用注释)@Service - > [帮助1]
查看完整的堆栈跟踪 错误,用-e重新运行Maven 开关。使用-X重新运行Maven 切换到启用完整的调试日志记录。
有关错误的详细信息 和可能的解决方案,请阅读 以下文章:[帮助1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
我非常感谢任何帮助......我正在使用NetBeans 7.0和Maven 3
答案 0 :(得分:6)
你需要告诉maven应该将源代码编译为哪个版本的java
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.5</source>
<target>1.5</target>
</configuration>
</plugin>
</plugins>
http://maven.apache.org/plugins/maven-compiler-plugin/examples/set-compiler-source-and-target.html
答案 1 :(得分:1)
您在java中使用了一些带注释的代码,但是在您的ide中编译是通过传递额外的命令行参数来使用源java 1.3 我在intellij做了一回事
在netbeans配置中(抱歉,我不是netbeans人)查找jdk /编译器设置的位置并更改命令行arg
更新:快速网络搜索说它可能在属性&gt;构建&gt;编译
答案 2 :(得分:1)
emeraldjava答案是对的。但是,我想添加两件事:
首先,您可以将源和目标信息设置为Maven属性:
<build>
...
<maven.compiler.source>1.5</maven.compiler.source>
<maven.compiler.target>1.5</maven.compiler.target>
其次,如果您使用最新版本的Maven编译器插件(例如2.3.2),则编译器的默认版本为1.5,因此您不需要任何其他配置:
编译器插件用于编译 你的项目的来源。该 默认编译器是javac并使用 编译Java源代码。另请注意 目前是默认来源 设置为1.5和默认目标 设置为1.5,独立于 你运行Maven的JDK。
(source)