2014-04-24 5 views
4

내가 자바 + 스칼라 (와 SBT) 하나의 프로젝트를 사용하고 있습니다.스칼라 컴파일 서버 - VM 경고

언어 정보 :

[email protected]:~⟫ 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) 
[email protected]:~⟫ scala -version 
Scala code runner version 2.10.4 -- Copyright 2002-2013, LAMP/EPFL 

내가 이상한 경고 메시지를 가지고 어떤 main()을 실행 해요 :

warning

나는이 행동을 이해할 수 없었다.

UPDATE : 자바 1.8 너무 빨리 설명 새로운 기능

[email protected]:~⟫ sbt -version 
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=256M; support was removed in 8.0 

감사 : 나는 같은 동작을 가지고 sbt 옵션을 선택

!

그러나 어떻게 경고 발생을 해결하려면 MaxPermSise 경고?

-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.useSystemAAFontSettings=lcd 

이클립스 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을 포함하는 모든 라인을 파일 여기

idea.vmoptions의 콘텐츠입니다.

그러나이 오류 경고는 계속 발생합니다 (main()이 실행 중일 때 터미널에서 sbt -version을 실행).

제안 사항?

답변

1

Java 8에서 PermGen 관리가 변경되었습니다. IIRC는 OS 메모리에서 직접 관리됩니다. 결과적으로 그때까지 사용 된 제한 사항 및 사용자 정의는 더 이상 사용할 수 없습니다. 특히 MaxPermSize는 더 이상 의미가 없습니다. intelij는 기본적으로 sbt 응용 프로그램을 실행할 때이 옵션을 가지고 있다고 가정합니다.

+0

당신이를 MaxPermSize 더 이상 어떤 * ** 의미 ** *이 없습니다 * * 말을하셨습니까 http://openjdk.java.net/projects/jdk8/milestones :

현재 자바 8 변경 사항에 대한 자세한 정보를 찾을 수 있습니다? – skiwi

+0

그것이 내가 이해 한 것입니다. 더 이상 jvm 메모리에 permgen에 대한 메모리가 없으므로이를 사용자 정의 할 필요가 없습니다. – Agemen

+0

@Agemen 정말 까다로운 변화. 어떻게이 문제를 해결할 수 있습니까? –