mirror of
				https://hub.spigotmc.org/stash/scm/spigot/spigot.git
				synced 2025-11-01 09:09:35 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			36 lines
		
	
	
	
		
			1.8 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			36 lines
		
	
	
	
		
			1.8 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
From fdb8e3f808c10f65cb25429e7885b742becc6582 Mon Sep 17 00:00:00 2001
 | 
						|
From: md_5 <git@md-5.net>
 | 
						|
Date: Mon, 23 Dec 2013 14:07:41 +1100
 | 
						|
Subject: [PATCH] Warn if PermGen may be insufficient
 | 
						|
 | 
						|
 | 
						|
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
 | 
						|
index aca0d97..337aa29 100644
 | 
						|
--- a/src/main/java/org/bukkit/craftbukkit/Main.java
 | 
						|
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java
 | 
						|
@@ -173,6 +173,22 @@ public class Main {
 | 
						|
                     useConsole = false;
 | 
						|
                 }
 | 
						|
 
 | 
						|
+                // Spigot Start
 | 
						|
+                int maxPermGen = 0; // In kb
 | 
						|
+                for ( String s : java.lang.management.ManagementFactory.getRuntimeMXBean().getInputArguments() )
 | 
						|
+                {
 | 
						|
+                    if ( s.startsWith( "-XX:MaxPermSize" ) )
 | 
						|
+                    {
 | 
						|
+                        maxPermGen = Integer.parseInt( s.replaceAll( "[^\\d]", "" ) );
 | 
						|
+                        maxPermGen <<= 10 * ("kmg".indexOf( Character.toLowerCase( s.charAt( s.length() - 1 ) ) ) );
 | 
						|
+                    }
 | 
						|
+                }
 | 
						|
+                if ( Float.parseFloat( System.getProperty( "java.class.version" ) ) < 52 && maxPermGen < ( 128 << 10 ) ) // 128mb
 | 
						|
+                {
 | 
						|
+                    System.out.println( "Warning, your max perm gen size is not set or less than 128mb. It is recommended you restart Java with the following argument: -XX:MaxPermSize=128M" );
 | 
						|
+                    System.out.println( "Please see http://www.spigotmc.org/wiki/changing-permgen-size/ for more details and more in-depth instructions." );
 | 
						|
+                }
 | 
						|
+                // Spigot End
 | 
						|
                 System.out.println("Loading libraries, please wait...");
 | 
						|
                 MinecraftServer.main(options);
 | 
						|
             } catch (Throwable t) {
 | 
						|
-- 
 | 
						|
2.5.0
 | 
						|
 |