วิธีเพิ่มขีด จำกัด หน่วยความจำ IDE ใน IntelliJ IDEA บน Mac


316

ฉันใช้ IDEA 12 Leda กับ Mountain Lion ฉันต้องการเพิ่มหน่วยความจำสูงสุดที่ IDE สามารถใช้ได้ ฉันตั้งค่า VMOptions ในไฟล์ Info.plist ให้เป็น -Xmx2048m -ea -XX:+HeapDumpOnOutOfMemoryError -Xverify:none -Xbootclasspath/a:../lib/boot.jar

เมื่อฉันเปิด IDEA ฉันยังคงเห็นหน่วยความจำสูงสุดที่ 711m

jps -v แสดง VMOptions ของฉันโหลดแล้ว แต่มันถูกแทนที่ด้วยตัวเลือกต่อไปนี้

29388  **-Xmx2048m** -ea -XX:+HeapDumpOnOutOfMemoryError -Xverify:none -Xbootclasspath/a:../lib/boot.jar -Xms128m **-Xmx800m** -XX:MaxPermSize=350m -XX:ReservedCodeCacheSize=64m -XX:+UseCodeCacheFlushing -XX:+UseCompressedOops -Didea.paths.selector=IdeaIC12 -Dsun.java2d.noddraw=true -Didea.max.intellisense.filesize=2500 -Didea.dynamic.classpath=false -Didea.jars.nocopy=false -Dsun.java2d.d3d=false -Dapple.awt.fullscreencapturealldisplays=false -Dapple.laf.useScreenMenuBar=true -Djava.endorsed.dirs= -Dswing.bufferPerWindow=false -Didea.fatal.error.notification=enabled -Didea.cycle.buffer.size=1024 -Didea.popup.weight=heavy -Didea.xdebug.key=-Xdebug -Dapple.awt.graphics.UseQuartz=true -Dsun.java2d.pmoffscreen=false -Didea.no.launcher=false -DCVS_PASSFILE=~/.cvspass -Didea.use.default.antialiasing.in.editor=false -Dcom.apple.mrj.application.live-resize=false -Didea.smooth.progress=false
29392 Jps -Dapplication.home=/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home -Xms8m

ในกรณีที่ไม่-Xmx800มาจากไหน? ฉันต้องการลบมัน


4
เพียงแค่ทราบว่าสำหรับ 64 บิตชื่อไฟล์จะต้องเป็นความคิด 64.vmoptions
Ittai

@Ittai สำหรับฉัน idea.vmoptions ใช้งานได้กับ 64 บิตบน mac os 10.9
Koray Tugay

บน OS X 10.10.3 กับ IntelliJ 14 ผมก็มีการเปลี่ยนชื่อ~/Library/Preferences/IdeaIC14/idea.vmoptionsไปก่อนที่มันจะรับรู้การเปลี่ยนแปลงคือidea64.vmoptions -Xmx2048m

บน OS X 10.11 Intellij 15 64 บิตฉันต้องเปลี่ยนชื่อความคิด 64.vmoptions เป็น idea.vmoptions เพื่อให้ทำงานได้
himanshu shekhar

ดูการตรวจสอบตัวเลือก IDEA ได้ที่tomaszdziurko.com/2015/11/…
Grigory Kislin

คำตอบ:


577

รุ่นปัจจุบัน: Help| Change Memory Settings:

เปลี่ยนการตั้งค่าหน่วยความจำ

ตั้งแต่ IntelliJ IDEA 15.0.4 คุณสามารถใช้: Help| Edit Custom VM Options...:

นี่จะสร้างสำเนาของ.vmoptionsไฟล์ในโฟลเดอร์ปรับแต่งและเปิดกล่องโต้ตอบเพื่อแก้ไขโดยอัตโนมัติ


รุ่นเก่ากว่า:

IntelliJ IDEA 12 เป็นแอปพลิเคชั่นที่เซ็นชื่อดังนั้นจึงInfo.plistไม่แนะนำให้เปลี่ยนตัวเลือกต่างๆ เนื่องจากลายเซ็นจะไม่ตรงกันและคุณจะได้รับปัญหาตามการตั้งค่าความปลอดภัยของระบบ (แอพจะไม่ทำงานหรือไฟร์วอลล์จะบ่นทุกครั้ง แอปจะไม่สามารถใช้ที่เก็บคีย์ระบบเพื่อบันทึกรหัสผ่าน)

จากการระบุที่อยู่IDEA-94050วิธีใหม่ในการจัดหาตัวเลือก JVM ถูกนำมาใช้ใน IDEA 12:

ตอนนี้ก็สามารถใช้ตัวเลือก VM จาก และคุณสมบัติของระบบจาก~/Library/Preferences/<appFolder>/idea.vmoptions~/Library/Preferences/<appFolder>/idea.properties

ตัวอย่างเช่นหากต้องการใช้ตัวเลือก-Xmx2048mคุณควรคัดลอก.vmoptionsไฟล์ต้นฉบับจาก/Applications/IntelliJ IDEA.app/bin/idea.vmoptionsไปยัง~/Library/Preferences/IntelliJIdea12/idea.vmoptionsจากนั้นแก้ไขการ-Xmxตั้งค่า

ไฟล์สุดท้ายควรมีลักษณะดังนี้:

-Xms128m
-Xmx2048m
-XX:MaxPermSize=350m
-XX:ReservedCodeCacheSize=64m
-XX:+UseCodeCacheFlushing
-XX:+UseCompressedOops

การคัดลอกไฟล์ต้นฉบับที่มีความสำคัญเป็นตัวเลือกที่จะไม่ได้เพิ่มพวกเขาจะถูกแทนที่

วิธีนี้ตัวเลือกที่กำหนดเองของคุณจะได้รับการเก็บรักษาไว้ระหว่างการอัพเดตและไฟล์แอปพลิเคชันจะยังคงไม่ได้แก้ไขทำให้ตัวตรวจสอบลายเซ็นมีความสุข


Community Edition : ใช้~/Library/Preferences/IdeaIC12/idea.vmoptionsไฟล์แทน


7
ไฟล์นี้ทำงานสำหรับฉัน: /Users/<user>/Library/Preferences/IdeaIC12/idea.vmoptions
PaulG

1
ไม่ใช่ / Applications ... หรือ ~ / Library ... ใช้งานได้สำหรับฉัน (ยังพยายามอยู่) - ฉันยังใช้ Snow Leopard อยู่ถ้ามันสำคัญ
mparaz

7
บน Mac OS X 10.8.3 และ IntelliJ IDEA สุดยอด 12.1.4 $ cp -i /Applications/IntelliJ\ IDEA\ 12.app/bin/idea.vmoptions ~/Library/Preferences/IntelliJIdea12/คำสั่งที่ถูกต้องคือ สิ่งนี้ตรงกับเอกสารการกำหนดค่า IDEA ล่าสุดที่jetbrains.com/idea/webhelp/increasing-memory-heap.htmlตามที่กล่าวไว้โดย michael-m
Michael G. Noll

6
cp /Applications/IntelliJ\ IDEA\ 13.app/bin/idea.vmoptions ~/Library/Preferences/IntelliJIdea13/idea.propertiesและจากนั้นvi ~/Library/Preferences/IntelliJIdea13/idea.properties
Darius M.

2
หากคุณใช้ OSX และใช้ PHPStorm คุณสามารถคัดลอกไปที่ ~ / Library / Preferences / WebIde80 / idea.properties (ใช้ WebIde70 หากคุณใช้ phpstorm 7)
Mixologic

104

เคล็ดลับที่เป็นประโยชน์ฉันคิดว่าฉันจะแบ่งปันในหัวข้อเก่านี้

คุณสามารถดูจำนวนหน่วยความจำที่ใช้และปรับสิ่งต่าง ๆ ให้สอดคล้องกับการใช้ Show memory indicatorตั้งค่า

ป้อนคำอธิบายรูปภาพที่นี่

มันปรากฏขึ้นที่ด้านล่างขวาของหน้าต่าง

ป้อนคำอธิบายรูปภาพที่นี่


9
ตรวจสอบให้แน่ใจว่าคุณมีViewStatus Barเปิดการใช้งานมากเกินไป
TrophyGeek

ว้าวคุณใช้ -Xmx = 8G หรือไม่
Kedar Mhaswade

มีวิธีใดบ้างที่จะแสดงการใช้หน่วยความจำของแอปพลิเคชันที่คุณเรียกใช้จาก IntelliJ แทนที่จะใช้การใช้หน่วยความจำของ IDE หรือไม่
OscarVanL

14

สำหรับ IDEA 13 และ OS X 10.9 Mavericks เส้นทางที่ถูกต้องคือ:

ต้นฉบับ: / Applications / IntelliJ IDEA 13.app/Contents/bin/idea.vmoptions

คัดลอกไปยัง: ~ / Library / Preferences / IntelliJIdea13 / idea.vmoptions


ฉันไม่มีโฟลเดอร์ IntelliJIdea13 ภายใน ~ / Library / Preferences พยายามสร้างมันและวางไฟล์ไว้ข้างใน แต่ก็ไม่มีโชค เคล็ดลับอื่น ๆ ?
Tiago

11

นี่คือลิงค์ไปยังเอกสารล่าสุด ณ วันนี้http://www.jetbrains.com/idea/webhelp/increasing-memory-heap.html


นั่นเป็นเพียงการเพิ่มฮีปสำหรับคอมไพเลอร์ไม่ใช่สำหรับ IDE
Zayenz

3
@Zayenz :: เท็จ มันไม่ได้ "เท่านั้น" เกี่ยวกับการเพิ่มกองสำหรับกระบวนการสร้าง แต่มันก็ยังมีข้อมูลที่จะตอบคำถาม - คือภายใต้ "หมายเหตุ" มันบอกว่า The memory heap available to IntelliJ IDEA may be changed by editing the corresponding VM options. Depending on the platform, these files are:........ - TLDR สำหรับคุณ
MikeM

1
@ michael-m ขออภัย ฉันอ่านแล้ว แต่ก็ไม่ทราบว่า ขอบคุณที่แก้ไขฉัน
Zayenz

5

สำหรับรุ่น Intellij2018 ฉันใช้การกำหนดค่าต่อไปนี้เพื่อประสิทธิภาพที่ดีขึ้น

-server
-Xms1024m
-Xmx4096m
-XX:MaxPermSize=1024m
-XX:ReservedCodeCacheSize=512m
-XX:+UseCompressedOops
-Dfile.encoding=UTF-8
-XX:+UseConcMarkSweepGC
-XX:+AggressiveOpts
-XX:+CMSClassUnloadingEnabled
-XX:+CMSIncrementalMode
-XX:+CMSIncrementalPacing
-XX:CMSIncrementalDutyCycleMin=0
-XX:-TraceClassUnloading
-XX:+TieredCompilation
-XX:SoftRefLRUPolicyMSPerMB=100
-ea
-Dsun.io.useCanonCaches=false
-Djava.net.preferIPv4Stack=true
-Djdk.http.auth.tunneling.disabledSchemes=""
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow
-Xverify:none

-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log
-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof

ขอบคุณ Avishek .. แน่นอนว่าจะลองใช้การกำหนดค่านี้บน Intellij IDEA 2018
gaurav

4

ไปที่เส้นทางนั้น "C: \ Program Files (x86) \ JetBrains \ IntelliJ IDEA 12.1.4 \ bin \ idea.exe.vmoptions" และเปลี่ยนขนาดเป็น -Xmx512m

  -Xms128m
  -Xmx512m
  -XX:MaxPermSize=250m
  -XX:ReservedCodeCacheSize=64m
  -XX:+UseCodeCacheFlushing
  -ea
  -Dsun.io.useCanonCaches=false
  -Djava.net.preferIPv4Stack=true

หวังว่ามันจะทำงาน


8
นั่นเป็นความจริงสำหรับ windows แต่ไม่ใช่ OSX ซึ่งเป็นคำถามที่เกี่ยวกับ
cdeszaq

1
พบและมันช่วยฉันใน windows! ขอบคุณ!
ดูแลเว็บ

3

OSX 10.9 ถ้าคุณไม่ใส่ใจเกี่ยวกับแอปพลิเคชันที่ลงชื่อคุณอาจเปลี่ยน

/Applications/IntelliJ\ IDEA\ 12\ CE.app/bin/idea.vmoptions

2

ดูเหมือนว่า IDEA จะแก้ปัญหานี้ให้คุณ (เหมือนทุกสิ่งทุกอย่าง) เมื่อโหลดโปรเจ็กต์ขนาดใหญ่และปล่อยให้ thrash มันจะเปิดกล่องโต้ตอบเพื่อตั้งค่าหน่วยความจำ การป้อน 2048 สำหรับ Xmx และคลิก "ปิดเครื่อง" จากนั้นรีสตาร์ท IDEA ทำให้ IDEA เริ่มต้นด้วยหน่วยความจำเพิ่มเติม ดูเหมือนว่าจะทำงานได้ดีสำหรับ Mac OS แต่ดูเหมือนว่าฉันจะยังคงอยู่บน Windows (ไม่แน่ใจเกี่ยวกับ IDEA 12)


1

ในเครื่องของฉันใช้งานได้เฉพาะbin/idea.vmoptionsการเพิ่มการตั้งค่า~/Library/Preferences/IntelliJIdea12/idea.vmoptionsทำให้ IDEA หยุดทำงานระหว่างการเริ่มต้น


โปรดดูคำตอบที่อัปเดตของฉัน โปรดทราบว่าidea.vmoptionsในPreferencesตัวเลือกไม่ได้เพิ่มตัวเลือก ดังนั้นคุณต้องคัดลอกไฟล์ต้นฉบับจากbinไดเรกทอรีแล้วปรับเปลี่ยน
CrazyCoder

1

นอกจากคำตอบยอดนิยมที่นี่https://stackoverflow.com/posts/13581526/revisions

  1. เปลี่ยนหน่วยความจำตามที่คุณต้องการ .vmoptions
  2. เปิดใช้งานมุมมองหน่วยความจำตามที่บอกไว้ที่นี่https://stackoverflow.com/a/39563251/5515861

คุณจะได้อะไรแบบนี้ที่มุมล่างขวา

ป้อนคำอธิบายรูปภาพที่นี่


1

IntelliJ รุ่นที่ใหม่กว่า (แน่นอนว่า WebStorm และ PhpStorm) ทำให้การเปลี่ยนแปลงนี้ง่ายยิ่งขึ้นโดยการเพิ่มHelp >> Change Memory Settingsรายการเมนูที่เปิดกล่องโต้ตอบซึ่งสามารถตั้งค่าขีด จำกัด หน่วยความจำได้

รายการเมนูเพื่อแสดงการตั้งค่าขีด จำกัด หน่วยความจำ ช่องโต้ตอบการตั้งค่าหน่วยความจำ


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.