Fix java.lang.OutOfMemory Java Heap Space error in JDeveloper


Why out-of-memory error is thrown?

Permanent Generation: The Permanent Generation is where class files are kept. These are the result of compiled classes and JSP pages. If this space is full, it triggers a Full Garbage Collection. If the Full Garbage Collection cannot clean out old unreferenced classes and there is no room left to expand the Permanent Space, an Out‐of‐ Memory error (OOME) is thrown and the JVM will crash.


There are three basic JVM command switches that control the amount of memory in the Java heap.
-XX:Xms
-XX:Xmx
-XX:MaxPermSize

-XX:Xms used to set memory available to JVM initially.


-XX:Xms used to set maximum amount of memory into which the JVM can grow.


-XX:MaxPermSize are used to set size for Permanent Generation.



Fixing out-of-memory error 
  • Find the location of Oracle Middleware Home. Click here to see
  • Navigate to the location: <Oracle_Middleware_Home_Location>\jdev\bin and open the file jdev.conf 


  • Add the below two lines and comment the existing size of -XX:MaxPermSize by adding # in front of it like below:
#Commented

#AddVMOption  -XX:MaxPermSize=256M

# Set maximum size for Permanent Generation to 356 MB
AddVMOption  -XX:MaxPermSize=356M


AddVMOption -Doracle.ide.osgi.buddy.delegate.resource.exempt.paths=META-INF/services/javax.xml.ws.spi.Provider

# optimize the JVM for strings / text editing
AddVMOption -XX:+UseStringCache
AddVMOption -XX:+OptimizeStringConcat
AddVMOption -XX:+UseCompressedStrings

# if on a 64-bit system, but using less than 32 GB RAM, this reduces object pointer memory size
AddVMOption -XX:+UseCompressedOops

# use an aggressive garbage collector (constant small collections)
AddVMOption -XX:+AggressiveOpts

# for multi-core machines, use multiple threads to create objects and reduce pause times
AddVMOption -XX:+UseConcMarkSweepGC
  • Navigate to the location: <Oracle_Middleware_Home_Location>\ide\bin and open the file ide.conf 

  • Add the below lines and comment the existing size of -XX:Xms and  -XX:Xmx by adding # in front of it like below:
#Commented
#AddVMOption  -Xmx640M
#AddVMOption  -Xms128M

#Set max heap size to 940 MB
AddVMOption  -Xmx940M

#Set initial heap size to 128 MB
AddVMOption  -Xms128M

  • Save the files and restart the jDeveloper. If you still get the out-of-memory error, then increase the size of Xmx parameter

Comments

All Categories

Call Fusion BIP Report2 Change Password1 Code Combinations2 Compute Instance2 CTE1 Customer1 Data Aggregation2 Database5 Date Conversion1 DB Adapter2 Decryption1 Development1 EBS4 Encryption1 ESS Jobs3 Examine1 FBDI3 Fusion APIs1 Fusion BIP7 GIT2 GL3 GL Journals1 GL_DAILY_CONVERSION_TYPES1 GL_DAILY_RATES1 ICS1 Identity Domain1 Integrations1 Java1 Journal Import1 Keys1 Legal Entity1 LookupTypeLOV1 LOV1 LOVs1 MultiPartAPIs1 Networking1 NVL2 NVL in OIC2 OCI11 OCI Billing1 OCI Compute5 OCI Cost Management1 OCI Events Service1 OCI Free Tier3 OCI Notifification Service1 OCI Security3 OIC4 OIC Mapper2 Oracle26 Oracle ADF17 Oracle APEX1 Oracle Apps59 Oracle Apps R126 Oracle ATP1 Oracle BIP8 Oracle Cloud12 Oracle Cloud Free Tier1 Oracle cloud Infrastructure9 Oracle Cloud Security2 Oracle Cloud VM1 Oracle DB4 oracle ebs5 Oracle ERP4 Oracle ERP Adapter2 Oracle ERP Cloud7 Oracle financials2 Oracle Forms1 Oracle Fusion57 Oracle Fusion BIP4 Oracle Fusion ERP17 Oracle Fusion Financials18 Oracle Integration Cloud3 Oracle OAF17 Oracle OCI14 Oracle OIC22 Oracle SOA 12c10 Oracle SQL17 Oracle VBCS1 Oracle VBS2 Oracle Visual Builder Cloud Service1 Oracle Visual Builder Studio2 Oracle Workflow Notifications1 Others10 Payables2 Payables Import1 Properties1 R121 Register BIP as ESS Job1 Reset Password1 Responsibility1 REST4 Security List1 Site Map1 SOAP2 SOAP API2 SOAP UI3 SQL16 SQL Functions3 SQL Queries14 SQL Query8 SQL Tips3 SSH1 TCA1 Value Sets1 VBCS1 Virtual Machine2 Virtual Machines1 XML1 XSLT1
Show more