maven几种常见错误的解决方法

一、must override a superclass method 错误

首先我们得知道:

@override注释在jdk1.5环境下只能用于对继承的类的方法的重写,而不能用于对实现的接口中的方法的实现,在jdk1.6环境下对于继承和实现都适用。

其次我们得知道:

maven的核心插件maven-compiler-plugin 默认指定了JDK版本和编码,maven 2默认用jdk 1.3来编译,maven 3默认用jdk 1.5,windows默认使用GBK编码,java项目经常编码为utf8,也需要在compiler插件中指出,否则中文乱码可能会出现编译错误。

如果出现must override a superclass method错误,就需要用1.6来编译了(1.6才支持对接口的注解)

所以需要指定maven-compiler-plugin插件的JDK版本,指定后

<build>
   <plugins> 
         <plugin> 
            <groupId>org.apache.maven.plugins</groupId> 
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.1</version> 
            <configuration> 
                <source>1.7</source> 
                <target>1.7</target> 
            </configuration> 
         </plugin> 
    </plugins>
  </build>

同时为了稳定起见修改eclipse配置window->preferences->Java->Compiler中的Compiler compliance level修改为1.7或以上。eclipse中使用maven的人都装了m2eclipse插件,在项目上右击选择maven-> Update Project Configuration,如果没有找到Update Project Configuration,直接项目右键Run as,用maven编译一下,也可以。

  must override a superclass method的错误就可以得到解决。

如果还是不行,那将你的eclipse的compile改成1.6或者1.7试试(先1.6,再1.7)

二、No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK? 错误

mave项目的jre总是指向jre1.5,即使改了之后,update项目后也会指向1.5。加上下面的plugin就可以了

<plugin>  
	<groupId>org.apache.maven.plugins</groupId>  
	<artifactId>maven-compiler-plugin</artifactId>  
	<version>3.1</version>  
	<configuration>  
		<source>1.7</source>  
		<target>1.7</target>  
	</configuration>  
</plugin>

但是加上之后,只是把默认的jdk改成了1.7,如果还出现这个错误,就需要看eclipse的jre是不是选择的jdk中的jre(不能选择单独安装的jre)

在Eclipse中创建maven项目出现的环境警告 j2se-1.5

三、Could not transfer artifact org.apache.maven.plugins:maven-surefire-plugin:pom:2.7.1 from/to central (http://repo1.maven.org/maven2)

这个错误有可能是你的远程仓库的地址访问不了,这时就需要更改你的远程的仓库地址了,在setting.xml中的mirrors里面配置,有一次出现这个问题,我把地址改成<url>http://repo1.maven.org/maven2/</url>就可以了,让我疑问的是,maven默认就是这个远程仓库的地址(默认的https://repo.maven.apache.org/maven2会自动跳转到http://repo1.maven.org/maven2/),我只是在mirrors加上mirror,就可以了。不知道为什么?默认的远程仓库地址在lib/maven-model-builder-3.3.3.jar的pom-4.0.0.xml中查看。

参考:Maven:mirror和repository 区别


转载于:https://my.oschina.net/cjun/blog/367644

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值