資源描述:
《常見java錯誤處理方法js錯誤處理.doc》由會員上傳分享,免費在線閱讀,更多相關內容在工程資料-天天文庫。
1、Java虛擬機報錯常見情況(1)、手動設置了JVM內存,但是由于主機配置的不同,可用內存有時高有時低,結果報錯比如:主機內存2G,開了個jboss-500M,這時候可用內存是15001、OraclesqlDevolper報錯jvm.dll今日升級OracleSQLdeveloper為2.1。發(fā)生一個錯誤如圖:說明是虛擬機無法創(chuàng)建。根據(jù)以前eclipse出現(xiàn)過類似的問題推斷應該是虛擬機參數(shù)設置有問題然后搜索OracleSQLdeveloper下所有的問題,看哪一個像是設置參數(shù)的。找到了這個文件ide.conf這個文件位于安裝路徑下的ide文件夾下的b
2、in里面。如圖所示修改其中的AddVMOption屬性參數(shù)如圖:2、JVM內存設置與查看1、設置環(huán)境變量setJAVA_OPTS=-Xms32m-Xmx512m可以根據(jù)自己機器的內存進行更改。2、設置Tomcat的JVM內存修改TOMCAT_HOME/bin/catalina.sh在“echo"UsingCATALINA_BASE:$CATALINA_BASE"”上面加入以下行:JAVA_OPTS="-server-XX:PermSize=64M-XX:MaxPermSize=128m建議:將相同的第三方jar文件移置到tomcat/shared/
3、lib目錄下,這樣可以達到減少jar文檔重復占用內存的目的。2、JVM相關網(wǎng)摘java.lang.OutOfMemoryError:Javaheapspace+myeclipse中分配tomcat啟動時所占內存大小這個問題主要還是由這個問題java.lang.OutOfMemoryError:Javaheapspace引起的。第一次出現(xiàn)這樣的的問題以后,引發(fā)了其他的問題。在網(wǎng)上一查可能是JAVA的堆棧設置太小的原因。跟據(jù)網(wǎng)上的答案大致有這兩種解決方法:1、設置環(huán)境變量setJAVA_OPTS=-Xms32m-Xmx512m可以根據(jù)自己機器的內存進行
4、更改。2、java-Xms32m-Xmx800mclassName就是在執(zhí)行JAVA類文件時加上這個參數(shù),其中className是需要執(zhí)行的確類名。(包括包名)這個解決問題了。而且執(zhí)行的速度比沒有設置的時候快很多。如果在測試的時候可能會用Eclispe這時候就需要在Eclipse->run-arguments中的VMarguments中輸入-Xms32m-Xmx800m這個參數(shù)就可以了。后來在Eclilpse中修改了啟動參數(shù),在VMarguments加入了-Xms32m-Xmx800m,問題解決。一、java.lang.OutOfMemoryErr
5、or:PermGenspacePermGenspace的全稱是PermanentGenerationspace,是指內存的永久保存區(qū)域,這塊內存主要是被JVM存放Class和Meta信息的,Class在被Loader時就會被放到PermGenspace中,它和存放類實例(Instance)的Heap區(qū)域不同,GC(GarbageCollection)不會在主程序運行期對PermGenspace進行清理,所以如果你的應用中有很多CLASS的話,就很可能出現(xiàn)PermGenspace錯誤,這種錯誤常見在web服務器對JSP進行precompile的時候。
6、如果你的WEBAPP下都用了大量的第三方jar,其大小超過了jvm默認的大小(4M)那么就會產生此錯誤信息了。解決方法:手動設置MaxPermSize大小修改TOMCAT_HOME/bin/catalina.sh在“echo"UsingCATALINA_BASE:$CATALINA_BASE"”上面加入以下行:JAVA_OPTS="-server-XX:PermSize=64M-XX:MaxPermSize=128m建議:將相同的第三方jar文件移置到tomcat/shared/lib目錄下,這樣可以達到減少jar文檔重復占用內存的目的。二、jav
7、a.lang.OutOfMemoryError:JavaheapspaceHeapsize設置JVM堆的設置是指java程序運行過程中JVM可以調配使用的內存空間的設置.JVM在啟動的時候會自動設置Heapsize的值,其初始空間(即-Xms)是物理內存的1/64,最大空間(-Xmx)是物理內存的1/4。可以利用JVM提供的-Xmn-Xms-Xmx等選項可進行設置。Heapsize的大小是YoungGeneration和TenuredGeneraion之和。提示:在JVM中如果98%的時間是用于GC且可用的Heapsize不足2%的時候將拋出此異常
8、信息。提示:HeapSize最大不要超過可用物理內存的80%,一般的要將-Xms和-Xmx選項設置為相同,而-Xmn為1/