mvn命令碰到的问题

上一篇 / 下一篇  2013-12-27 11:18:40 / 个人分类:测试

mvn在java工程中已是一个很重要的插件了,java工程之间的相互依赖可以用jar包的方式导入使用,这个时候mvn就有用武之地了。具体mvn插件如何使用先不细说,先来说说我在使用mvn时碰到的问题吧。

由于代码量及工程的大小不同,需要占用的内存大小也不同,而mvn插件默认大小是64M,在项目较大时,使用Maven生成项目站点需要占用大量的内存,如果没有该配置,则很容易得到java.lang.OutOfMemeoryError。我碰到的问题就是在执行mvn install命令时,执行到一半抛出内存溢出的错误,关键字是“OutOfMemoryError”。

运行mvn命令实际上是执行了Java命令,既然是运行Java,那么运行Java命令可用的参数当然也应该在运行mvn命令时可用。这个时候,MAVEN_OPTS环境变量就能派上用场。通常需要设置MAVEN_OPTS的值为-Xms128m -Xmx512m,因为Java默认的最大可用内存往往不能够满足Maven运行的需要。搜索网上资料显示最好是设置环境变量,当时的想法是在mvn_home环境变量里面加扩大内存的设置,找了半天没找到对的设置方式。

经开发同学指导,了解了需要新增一个环境变量:MAVEN_OPTS= -Xms128m -Xmx512m,而不是在mvn_home环境变量里面做文章。重新设置以后,mvn install没有抛错误了,能正常运行了。

为什么是设置环境变量的方式呢?

尽量不要直接修改mvn.bat或者mvn这两个Maven执行脚本文件。因为如果修改了脚本文件,升级Maven时就不得不再次修改,一来麻烦,二来容易忘记。同理,应该尽可能地不去修改任何Maven安装目录下的文件。因此,一开始就配置该变量是推荐的做法。

这是目前我碰到的问题,后期还有其他问题,再加上。这个问题虽然比较简单,自己也差不多找到解决方案,但是没碰到过,还是不会知道如何处理。


TAG:

 

评分:0

我来说两句

Open Toolbar