利用eclipse maven插件创建工程编译问题

问题描述:

      前段时间利用eclipse maven插件创建一个工程,当时只是在eclipse IDE 中进行Junit测试,没有发现

什么问题,今天想把工程build,结果出现JDK编译的问题,我环境变量JDK是1.5,可以使用mvn clean install,提示我

generics are not supported in -source 1.3,(use -source 5 or higher to enable generics)这种错误消息,在网上查了下,maven插件自带JDK是1.3,不知道为什么在命令行无法使用JDK1.5


问题补充
急求读者分析下,或者给下建议
问题补充
谢谢rrrrutdk的方案,问题解决了

mvn命令是使用的你的环境变量中指定的JDK,也就是1.5,
但是在compile阶段,maven会使用maven-compiler-plugin来编译sourceDirectory指向的源代码,
其默认是使用系统中的javac并向编译器指明source为1.3,而target是1.1。

而你的代码中出现了泛型,这是JDK1.5才出现的,虽然你的javac是1.5版本的,
但是因为指定了source为1.3,则只会以1.3的编译规则来编译你的代码。

[quote]maven插件自带JDK是1.3[/quote]

是错误的说法。Maven不自带也没有必要自带JDK。

如果希望能正常使用,通常你需要在pom.xml中指定maven-compiler-plugin的运行参数:

[code="xml"]
4.0.0




maven-compiler-plugin

1.5
1.5


<!-- ... -->

[/code]

指定source与target,它们的值请根据具体环境与需求去设置。