参见英文答案 > PermGen elimination in JDK 8 6个
我在一个项目中使用java scala(与sbt).
语言信息:
nazar@lelyak-desktop:~⟫ java -version
java version "1.8.0_05"
Java(TM) SE Runtime Environment (build 1.8.0_05-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.5-b02, mixed mode)
nazar@lelyak-desktop:~⟫ scala -version
Scala code runner version 2.10.4 -- copyright 2002-2013, LAMP/EPFL
当我运行任何main()时,我收到了奇怪的警告提示:
我无法弄清楚这种行为.
更新:
我检查了sbt选项它有相同的行为:
nazar@lelyak-desktop:~⟫ sbt -version
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=256M; support was removed in 8.0
但是如何解决MaxPermSise警告的发生?
这里是idea.vmoptions的内容:
-server
-xms128m
-Xmx512m
-XX:MaxPermSize=250m
-XX:ReservedCodeCacheSize=64m
-ea
-Dsun.io.useCanonCaches=false
-Djava.net.preferIPv4Stack=true
-Djsse.enableSNIExtension=false
-XX:+UseCodeCacheFlushing
-XX:+UseConcmarkSweepGC
-XX:SoftRefLRUPolicyMSPerMB=50
-Dawt.useSy@R_404_6063@AAFontSettings=lcd
Eclipse有eclipse.ini:
-startup
plugins/org.eclipse.equinox.launcher_1.3.0.v20130327-1440.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.gtk.linux.x86_64_1.1.200.v20130807-1835
-product
org.eclipse.epp.package.jee.product
--launcher.defaultAction
openFile
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
--launcher.appendVmargs
-vm
/usr/lib/jvm/java-8-oracle/bin/java
-/home/nazar/optional/java/jdk1.8.0/bin/java
-vmargs
-Dosgi.requiredJavaVersion=1.6
-XX:MaxPermSize=256m
-xms40m
-Xmx1024m
-Dorg.eclipse.swt.browser.IEVersion=10001
UPDATE2
我从两个配置文件中删除了包含MaxPermSize的所有行.
但是这个错误警告不断出现(当main()运行时,并在终端运行sbt -version).
有什么建议?
解决方法:
PermGen管理在Java 8中发生了变化.IIRC,它直接在OS内存中管理.因此,在此之前使用的限制和自定义将不再可用.特别是,MaxPermSize不再具有任何意义.我想intellij在运行sbt应用程序时默认有这个选项.
您可以在此处找到有关Java 8更改的更多信息:http://openjdk.java.net/projects/jdk8/milestones
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。