小编Jor*_*ris的帖子

OutOfMemoryException(升级到JDK 7u45之后)

升级到最新的JDK后,我们(在某些机器上)有一个奇怪的OutOfMemoryException.

考虑这个简单的应用:

public class Test
{
    public static void main (String[] args) {
        try {
            java.text.SimpleDateFormat dateFormatter = new java.text.SimpleDateFormat("E dd/MM/yyyy HH:mm");
            System.out.println("formatted date: " + dateFormatter.format(new java.util.Date()));
        } catch (Exception x) {
            System.err.println(x);
            System.exit(1);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

运行这个小程序将导致此异常(即使在运行时-Xmx2048M -Xms2048):

Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
    at java.util.Currency.readLongArray(Currency.java:657)
    at java.util.Currency.access$100(Currency.java:76)
    at java.util.Currency$1.run(Currency.java:211)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.util.Currency.<clinit>(Currency.java:192)
    at java.text.DecimalFormatSymbols.initialize(DecimalFormatSymbols.java:566)
    at java.text.DecimalFormatSymbols.<init>(DecimalFormatSymbols.java:94)
    at java.text.DecimalFormatSymbols.getInstance(DecimalFormatSymbols.java:157)
    at java.text.NumberFormat.getInstance(NumberFormat.java:767)
    at java.text.NumberFormat.getIntegerInstance(NumberFormat.java:439)
    at java.text.SimpleDateFormat.initialize(SimpleDateFormat.java:664)
    at java.text.SimpleDateFormat.<init>(SimpleDateFormat.java:585)
    at java.text.SimpleDateFormat.<init>(SimpleDateFormat.java:560)
    at …
Run Code Online (Sandbox Code Playgroud)

java out-of-memory simpledateformat java-7

12
推荐指数
1
解决办法
1079
查看次数

标签 统计

java ×1

java-7 ×1

out-of-memory ×1

simpledateformat ×1