Skip to content

Instantly share code, notes, and snippets.

@danveloper
Created August 29, 2012 13:28
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save danveloper/3512492 to your computer and use it in GitHub Desktop.
Save danveloper/3512492 to your computer and use it in GitHub Desktop.
Huge enumeration problem w/ Spring-loaded
// This class WILL be reloaded
enum BigValueType
{
enum0,
enum1,
enum2;
HugeEnum[] hugeEnums;
BigValueType() {
hugeEnums = HugeEnum.values();
}
}
// The problem will still occur because this enum will still exceed the method-memory limitation in the JVM.
// This class WILL NOT be reloaded
enum HugeEnum {
enum0,
enum1,
enum2,
enum3,
enum4,
enum5,
enum6,
enum7,
enum8,
enum9,
enum10,
enum11,
enum12,
enum13,
enum14,
enum15,
enum16,
enum17,
enum18,
enum19,
enum20,
enum21,
enum22,
enum23,
enum24,
enum25,
enum26,
enum27,
enum28,
enum29,
enum30,
enum31,
enum32,
enum33,
enum34,
enum35,
enum36,
enum37,
enum38,
enum39,
enum40,
enum41,
enum42,
enum43,
enum44,
enum45,
enum46,
enum47,
enum48,
enum49,
enum50,
enum51,
enum52,
enum53,
enum54,
enum55,
enum56,
enum57,
enum58,
enum59,
enum60,
enum61,
enum62,
enum63,
enum64,
enum65,
enum66,
enum67,
enum68,
enum69,
enum70,
enum71,
enum72,
enum73,
enum74,
enum75,
enum76,
enum77,
enum78,
enum79,
enum80,
enum81,
enum82,
enum83,
enum84,
enum85,
enum86,
enum87,
enum88,
enum89,
enum90,
enum91,
enum92,
enum93,
enum94,
enum95,
enum96,
enum97,
enum98,
enum99,
enum100,
enum101,
enum102,
enum103,
enum104,
enum105,
enum106,
enum107,
enum108,
enum109,
enum110,
enum111,
enum112,
enum113,
enum114,
enum115,
enum116,
enum117,
enum118,
enum119,
enum120,
enum121,
enum122,
enum123,
enum124,
enum125,
enum126,
enum127,
enum128,
enum129,
enum130,
enum131,
enum132,
enum133,
enum134,
enum135,
enum136,
enum137,
enum138,
enum139,
enum140,
enum141,
enum142,
enum143,
enum144,
enum145,
enum146,
enum147,
enum148,
enum149,
enum150,
enum151,
enum152,
enum153,
enum154,
enum155,
enum156,
enum157,
enum158,
enum159,
enum160,
enum161,
enum162,
enum163,
enum164,
enum165,
enum166,
enum167,
enum168,
enum169,
enum170,
enum171,
enum172,
enum173,
enum174,
enum175,
enum176,
enum177,
enum178,
enum179,
enum180,
enum181,
enum182,
enum183,
enum184,
enum185,
enum186,
enum187,
enum188,
enum189,
enum190,
enum191,
enum192,
enum193,
enum194,
enum195,
enum196,
enum197,
enum198,
enum199,
enum200,
enum201,
enum202,
enum203,
enum204,
enum205,
enum206,
enum207,
enum208,
enum209,
enum210,
enum211,
enum212,
enum213,
enum214,
enum215,
enum216,
enum217,
enum218,
enum219,
enum220,
enum221,
enum222,
enum223,
enum224,
enum225,
enum226,
enum227,
enum228,
enum229,
enum230,
enum231,
enum232,
enum233,
enum234,
enum235,
enum236,
enum237,
enum238,
enum239,
enum240,
enum241,
enum242,
enum243,
enum244,
enum245,
enum246,
enum247,
enum248,
enum249,
enum250,
enum251,
enum252,
enum253,
enum254,
enum255,
enum256,
enum257,
enum258,
enum259,
enum260,
enum261,
enum262,
enum263,
enum264,
enum265,
enum266,
enum267,
enum268,
enum269,
enum270,
enum271,
enum272,
enum273,
enum274,
enum275,
enum276,
enum277,
enum278,
enum279,
enum280,
enum281,
enum282,
enum283,
enum284,
enum285,
enum286,
enum287,
enum288,
enum289,
enum290,
enum291,
enum292,
enum293,
enum294,
enum295,
enum296,
enum297,
enum298,
enum299,
enum300,
enum301,
enum302,
enum303,
enum304,
enum305,
enum306,
enum307,
enum308,
enum309,
enum310,
enum311,
enum312,
enum313,
enum314,
enum315,
enum316,
enum317,
enum318,
enum319,
enum320,
enum321,
enum322,
enum323,
enum324,
enum325,
enum326,
enum327,
enum328,
enum329,
enum330,
enum331,
enum332,
enum333,
enum334,
enum335,
enum336,
enum337,
enum338,
enum339,
enum340,
enum341,
enum342,
enum343,
enum344,
enum345,
enum346,
enum347,
enum348,
enum349,
enum350,
enum351,
enum352,
enum353,
enum354,
enum355,
enum356,
enum357,
enum358,
enum359,
enum360,
enum361,
enum362,
enum363,
enum364,
enum365,
enum366,
enum367,
enum368,
enum369,
enum370,
enum371,
enum372,
enum373,
enum374,
enum375,
enum376,
enum377,
enum378,
enum379,
enum380,
enum381,
enum382,
enum383,
enum384,
enum385,
enum386,
enum387,
enum388,
enum389,
enum390,
enum391,
enum392,
enum393,
enum394,
enum395,
enum396,
enum397,
enum398,
enum399,
enum400,
enum401,
enum402,
enum403,
enum404,
enum405,
enum406,
enum407,
enum408,
enum409,
enum410,
enum411,
enum412,
enum413,
enum414,
enum415,
enum416,
enum417,
enum418,
enum419,
enum420,
enum421,
enum422,
enum423,
enum424,
enum425,
enum426,
enum427,
enum428,
enum429,
enum430,
enum431,
enum432,
enum433,
enum434,
enum435,
enum436,
enum437,
enum438,
enum439,
enum440,
enum441,
enum442,
enum443,
enum444,
enum445,
enum446,
enum447,
enum448,
enum449,
enum450,
enum451,
enum452,
enum453,
enum454,
enum455,
enum456,
enum457,
enum458,
enum459,
enum460,
enum461,
enum462,
enum463,
enum464,
enum465,
enum466,
enum467,
enum468,
enum469,
enum470,
enum471,
enum472,
enum473,
enum474,
enum475,
enum476,
enum477,
enum478,
enum479,
enum480,
enum481,
enum482,
enum483,
enum484,
enum485,
enum486,
enum487,
enum488,
enum489,
enum490,
enum491,
enum492,
enum493,
enum494,
enum495,
enum496,
enum497,
enum498,
enum499,
enum500,
enum501,
enum502,
enum503,
enum504,
enum505,
enum506,
enum507,
enum508,
enum509,
enum510,
enum511,
enum512,
enum513,
enum514,
enum515,
enum516,
enum517,
enum518,
enum519,
enum520,
enum521,
enum522,
enum523,
enum524,
enum525,
enum526,
enum527,
enum528,
enum529,
enum530,
enum531,
enum532,
enum533,
enum534,
enum535,
enum536,
enum537,
enum538,
enum539,
enum540,
enum541,
enum542,
enum543,
enum544,
enum545,
enum546,
enum547,
enum548,
enum549,
enum550,
enum551,
enum552,
enum553,
enum554,
enum555,
enum556,
enum557,
enum558,
enum559,
enum560,
enum561,
enum562,
enum563,
enum564,
enum565,
enum566,
enum567,
enum568,
enum569,
enum570,
enum571,
enum572,
enum573,
enum574,
enum575,
enum576,
enum577,
enum578,
enum579,
enum580,
enum581,
enum582,
enum583,
enum584,
enum585,
enum586,
enum587,
enum588,
enum589,
enum590,
enum591,
enum592,
enum593,
enum594,
enum595,
enum596,
enum597,
enum598,
enum599,
enum600,
enum601,
enum602,
enum603,
enum604,
enum605,
enum606,
enum607,
enum608,
enum609,
enum610,
enum611,
enum612,
enum613,
enum614,
enum615,
enum616,
enum617,
enum618,
enum619,
enum620,
enum621,
enum622,
enum623,
enum624,
enum625,
enum626,
enum627,
enum628,
enum629,
enum630,
enum631,
enum632,
enum633,
enum634,
enum635,
enum636,
enum637,
enum638,
enum639,
enum640,
enum641,
enum642,
enum643,
enum644,
enum645,
enum646,
enum647,
enum648,
enum649,
enum650,
enum651,
enum652,
enum653,
enum654,
enum655,
enum656,
enum657,
enum658,
enum659,
enum660,
enum661,
enum662,
enum663,
enum664,
enum665,
enum666,
enum667,
enum668,
enum669,
enum670,
enum671,
enum672,
enum673,
enum674,
enum675,
enum676,
enum677,
enum678,
enum679,
enum680,
enum681,
enum682,
enum683,
enum684,
enum685,
enum686,
enum687,
enum688,
enum689,
enum690,
enum691,
enum692,
enum693,
enum694,
enum695,
enum696,
enum697,
enum698,
enum699,
enum700,
enum701,
enum702,
enum703,
enum704,
enum705,
enum706,
enum707,
enum708,
enum709,
enum710,
enum711,
enum712,
enum713,
enum714,
enum715,
enum716,
enum717,
enum718,
enum719,
enum720,
enum721,
enum722,
enum723,
enum724,
enum725,
enum726,
enum727,
enum728,
enum729,
enum730,
enum731,
enum732,
enum733,
enum734,
enum735,
enum736,
enum737,
enum738,
enum739,
enum740,
enum741,
enum742,
enum743,
enum744,
enum745,
enum746,
enum747,
enum748,
enum749,
enum750,
enum751,
enum752,
enum753,
enum754,
enum755,
enum756,
enum757,
enum758,
enum759,
enum760,
enum761,
enum762,
enum763,
enum764,
enum765,
enum766,
enum767,
enum768,
enum769,
enum770,
enum771,
enum772,
enum773,
enum774,
enum775,
enum776,
enum777,
enum778,
enum779,
enum780,
enum781,
enum782,
enum783,
enum784,
enum785,
enum786,
enum787,
enum788,
enum789,
enum790,
enum791,
enum792,
enum793,
enum794,
enum795,
enum796,
enum797,
enum798,
enum799,
enum800,
enum801,
enum802,
enum803,
enum804,
enum805,
enum806,
enum807,
enum808,
enum809,
enum810,
enum811,
enum812,
enum813,
enum814,
enum815,
enum816,
enum817,
enum818,
enum819,
enum820,
enum821,
enum822,
enum823,
enum824,
enum825,
enum826,
enum827,
enum828,
enum829,
enum830,
enum831,
enum832,
enum833,
enum834,
enum835,
enum836,
enum837,
enum838,
enum839,
enum840,
enum841,
enum842,
enum843,
enum844,
enum845,
enum846,
enum847,
enum848,
enum849,
enum850,
enum851,
enum852,
enum853,
enum854,
enum855,
enum856,
enum857,
enum858,
enum859,
enum860,
enum861,
enum862,
enum863,
enum864,
enum865,
enum866,
enum867,
enum868,
enum869,
enum870,
enum871,
enum872,
enum873,
enum874,
enum875,
enum876,
enum877,
enum878,
enum879,
enum880,
enum881,
enum882,
enum883,
enum884,
enum885,
enum886,
enum887,
enum888,
enum889,
enum890,
enum891,
enum892,
enum893,
enum894,
enum895,
enum896,
enum897,
enum898,
enum899,
enum900,
enum901,
enum902,
enum903,
enum904,
enum905,
enum906,
enum907,
enum908,
enum909,
enum910,
enum911,
enum912,
enum913,
enum914,
enum915,
enum916,
enum917,
enum918,
enum919,
enum920,
enum921,
enum922,
enum923,
enum924,
enum925,
enum926,
enum927,
enum928,
enum929,
enum930,
enum931,
enum932,
enum933,
enum934,
enum935,
enum936,
enum937,
enum938,
enum939,
enum940,
enum941,
enum942,
enum943,
enum944,
enum945,
enum946,
enum947,
enum948,
enum949,
enum950,
enum951,
enum952,
enum953,
enum954,
enum955,
enum956,
enum957,
enum958,
enum959,
enum960,
enum961,
enum962,
enum963,
enum964,
enum965,
enum966,
enum967,
enum968,
enum969,
enum970,
enum971,
enum972,
enum973,
enum974,
enum975,
enum976,
enum977,
enum978,
enum979,
enum980,
enum981,
enum982,
enum983,
enum984,
enum985,
enum986,
enum987,
enum988,
enum989,
enum990,
enum991,
enum992,
enum993,
enum994,
enum995,
enum996,
enum997,
enum998,
enum999,
enum1000;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment