zoukankan      html  css  js  c++  java
  • maven 打包 OutOfMemoryError

    maven 打包 OutOfMemoryError

    [ERROR] Java heap space -> [Help 1]
    [ERROR] 
    [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
    [ERROR] Re-run Maven using the -X switch to enable full debug logging.
    [ERROR] 
    [ERROR] For more information about the errors and possible solutions, please read the following articles:
    [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/OutOfMemoryError
    

    查看官方文档,内存溢出可能有以下几种情况:

    1. You are building a very big multi-module project, each module requires a certain amount of memory so with increasing number of modules the amount of required memory increases as well until the JVM finally runs out of "Java heap space".
    2. You are using some plugins that perform memory-intensive operations like analyzing the class files of all project dependencies.
    3. You are using the Maven Compiler Plugin with the option fork=false (default) and your project has a lot of source files to compile. When using the Java compiler in embedded mode, each compiled class will consume heap memory and depending on the JDK being used this memory is not subject to gargabe collection, i.e. the memory allocated for the compiled classes will not be freed. The resultant error message typically says "PermGen space".

    我的工程 pom.xml 中配制有

    <resources>
        <resource>
            <directory>src/main/resources</directory>
            <!-- <filtering>true</filtering> -->
            <includes>
                <include>**/*.*</include>
            </includes>
        </resource>
    </resources>
    

    filtering 配制为 true 后,会扫描资源路径下的文件,将文件中的变量解析出来,恰好 resources 文件下有一个 27M 的文件,结果就内存溢出了,解决的办法很简单,将 filtering 改为 false 就好。

    官网上还给出了另一种解决方案:

    # Windows 
    set MAVEN_OPTS=-Xmx512m -XX:MaxPermSize=128m
    # Unix
    export MAVEN_OPTS="-Xmx512m -XX:MaxPermSize=128m"
    

    每天用心记录一点点。内容也许不重要,但习惯很重要!

  • 相关阅读:
    javaScript实用的一些方法
    ASP.NETCookies的用法
    SqlCommand执行带参数的sql语句
    C# Excel导出
    sql server复制表
    让Double类型完整显示,不用科学计数法显示E
    jstl fmt功能说明
    工具 PL/SQL 快捷键
    sql server 与 oracle 的不同,第一感觉。
    BigDecimal不整除的一个异常
  • 原文地址:https://www.cnblogs.com/binarylei/p/8792905.html
Copyright © 2011-2022 走看看