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"
    

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

  • 相关阅读:
    Working with WordprocessingML documents (Open XML SDK)
    How to Choose the Best Way to Pass Multiple Models in ASP.NET MVC
    Azure:Manage anonymous read access to containers and blobs
    Convert HTML to PDF with New Plugin
    location.replace() keeps the history under control
    On the nightmare that is JSON Dates. Plus, JSON.NET and ASP.NET Web API
    HTTP Modules versus ASP.NET MVC Action Filters
    解读ASP.NET 5 & MVC6系列(6):Middleware详解
    Content Negotiation in ASP.NET Web API
    Action Results in Web API 2
  • 原文地址:https://www.cnblogs.com/binarylei/p/8792905.html
Copyright © 2011-2022 走看看