linux - Maven 构建使用/分配大量内存

标签 linux memory gwt maven-2 maven

我有一个使用 Apache Maven 构建的大小合适的 GWT (Google Web Toolkit) 项目。构建过程涉及生成 8 个 rpm 和 2 个 war。

我正在尝试在远程虚拟服务器上构建项目,将 CentOS 5.2 作为 guest 操作系统运行。由于客户操作系统不能使用交换空间,我不得不为它的构建分配大量内存,否则我会得到一个java 无法分配内存错误(错误=12)。如果可用空间不足 7GB,构建将失败。我怀疑这 7GB 中的大部分从未使用过,但出于某种原因被分配了。

在构建结束时,输出显示为:[INFO] Final Memory: 178M/553M

我将 MAVEN_OPTS 设置为 -Xms256m -Xmx1024M

我不确定如何让 Maven 构建使用更少的内存。非常感谢任何建议。

最佳答案

请注意,像 maven gwt 插件(和 maven surefire)这样的 fork 插件使用的内存“超出”maven 执行报告的总数。我建议将操作系统级别的进程大小与“jps -lv”的输出进行关联,以找出哪个分支正在窃取您的所有内存。

例如,如果由于某种原因 fork 的进程没有终止,它会很快变得非常拥挤。

关于linux - Maven 构建使用/分配大量内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4964258/

相关文章:

linux - 比较两个文件并打印不匹配的行

linux - 有哪些适合当前开发使用的优秀 Linux 发行版?

linux - 计算给定分区的已用磁盘空间百分比的 bash 脚本

c++ - STL C++ 中的内存分配

c++ - 内存调试策略

java - 扩展Widget,传递参数?

php - 通过 shell_exec 与外部命令交互

c - 指令类型和数量

java - GWT 无法解析 BST 和 EDT 等时区

gwt - 如何在GinMapBinder中正确使用TypeLiteral?