我是初学者尝试使用Oracle大数据NoSQL MoviePlex动手实验室,并且在将电影数据加载到NoSQL后,尝试加载索引页面时遇到了同样的错误。以下是JDeveloper中显示的错误消息。
java.lang.OutOfMemoryError:PermGen space
at java.lang.Class.getDeclaredConstructors0(Native Method)
在java.lang.Class.privateGetDeclaredConstructors(Class.java:2493)
在java.lang.Class.getConstructor0(Class.java:2803)
在java.lang.Class.newInstance(Class.java:345)
at sun.reflect.MethodAccessorGenerator $ 1.run(MethodAccessorGenerator.java:399)
截断。查看完整堆栈跟踪的日志文件
引起者:java.lang.OutOfMemoryError:PermGen space
at java.lang.Class.getDeclaredConstructors0(Native Method)
在java.lang.Class.privateGetDeclaredConstructors(Class.java:2493)
在java.lang.Class.getConstructor0(Class.java:2803)
在java.lang.Class.newInstance(Class.java:345)
at sun.reflect.MethodAccessorGenerator $ 1.run(MethodAccessorGenerator.java:399)
截断。请参阅日志文件以获取完整的堆栈跟踪
线程中的异常" [ACTIVE] ExecuteThread:' 0'对于队列:' weblogic.kernel.Default(自我调整)'" 异常:java.lang.OutOfMemoryError从线程中的UncaughtExceptionHandler抛出" [ACTIVE] ExecuteThread:' 0'对于队列:' weblogic.kernel.Default(自我调整)'" 线程中的异常" [ACTIVE] ExecuteThread:' 6'对于队列:' weblogic.kernel.Default(自我调整)'" 例外:从线程中的UncaughtExceptionHandler抛出的java.lang.OutOfMemoryError" [ACTIVE] ExecuteThread:' 6'对于队列:' weblogic.kernel.Default(自我调整)'" 线程中的异常" [ACTIVE] ExecuteThread:' 5'对于队列:' weblogic.kernel.Default(自我调整)'" 例外:从线程中的UncaughtExceptionHandler抛出的java.lang.OutOfMemoryError" [ACTIVE] ExecuteThread:' 5'对于队列:' weblogic.kernel.Default(自我调整)'" 线程中的异常" [ACTIVE] ExecuteThread:' 7'对于队列:' weblogic.kernel.Default(自我调整)'" 异常:java.lang.OutOfMemoryError从线程中的UncaughtExceptionHandler抛出" [ACTIVE] ExecuteThread:' 7'对于队列:' weblogic.kernel.Default(自我调整)'" 线程中的异常" [ACTIVE] ExecuteThread:' 2'对于队列:' weblogic.kernel.Default(自我调整)'" 例外:从线程中的UncaughtExceptionHandler抛出的java.lang.OutOfMemoryError" [ACTIVE] ExecuteThread:' 2'对于队列:' weblogic.kernel.Default(自我调整)'" 线程中的异常" [ACTIVE] ExecuteThread:' 4'对于队列:' weblogic.kernel.Default(自我调整)'" 例外:从线程中的UncaughtExceptionHandler抛出的java.lang.OutOfMemoryError" [ACTIVE] ExecuteThread:' 4'对于队列:' weblogic.kernel.Default(自我调整)'" 线程中的异常" [ACTIVE] ExecuteThread:' 8'对于队列:' weblogic.kernel.Default(自我调整)'" 例外:从线程中的UncaughtExceptionHandler抛出的java.lang.OutOfMemoryError" [ACTIVE] ExecuteThread:' 8'对于队列:' weblogic.kernel.Default(自我调整)'" 线程中的异常" [ACTIVE] ExecuteThread:' 1'对于队列:' weblogic.kernel.Default(自我调整)'" 例外:从线程中的UncaughtExceptionHandler抛出的java.lang.OutOfMemoryError" [ACTIVE] ExecuteThread:' 1' for queue:' weblogic.kernel.Default(自我调整)'"
我甚至已经将基本内存增加到12000MB,因为我被告知可以解决问题,但仍然会出现此错误。
这些是我使用的工具和平台: -
BigDataLite 2.4.1 - Oracle VM VirtualBox
Oracle JDeveloper 11g第1版
动手实验室链接:http://www.oracle.com/technetwork/topics/bigdata/articles/intro-to-oracle-nosql-db-hol-1937059.pdf
有人可以帮我解决这个问题吗?
谢谢,
安
答案 0 :(得分:1)
您需要在setDomainEnv.sh
下找到/home/oracle/.jdeveloper/system11.1.1.6.38.61.92/DefaultDomain/bin/
文件并进行编辑。
找到字符串WLS_MEM_ARGS_64BIT="-Xms256m -Xmx512m"
(我发现了两次)并在"-XX:PermSize=256m -XX:MaxPermSize=256m"
之后添加-Xmx512m
,以便它看起来像:
WLS_MEM_ARGS_64BIT="-Xms256m -Xmx512m -XX:PermSize=256m -XX:MaxPermSize=256m".
之后,重新启动JDeveloper。