Buggy code:
public final class Main extends JavaPlugin { public static String dataFolder ; public static Main plugin ; public static ArrayList < Cooldown > cool = new ArrayList < Cooldown > ( ) ; public static Map < Block , String > mines = new HashMap < Block , String > ( ) ; public static Map < Class < ? > , FakeItem > fakeItems = new HashMap < Class < ? > , FakeItem > ( ) ; public static Map < Location , CloneBlock > changeBack = new HashMap < Location , CloneBlock > ( ) ; public static Location loc1 ; public static Location loc2 ; public static ProtocolManager protocolManager ; public static SuperYaml config ; public static SuperYaml data ; public static SuperYaml bookData ; public static SuperYaml signData ; public static SuperYaml playerData ; public static SuperYaml log ; public static SuperYaml kitData ; public static SuperYaml uuidData ; public static SuperYaml pointShop ; public static GhostManager ghostManager ; public static NPCFactory npcFactory ; public static HashMap < String , CommandExecutor > commands = new HashMap < String , CommandExecutor > ( ) ; public static HashMap < Integer , ArrayList < Location > > signs = new HashMap < Integer , ArrayList < Location > > ( ) ; @ Override public void onEnable ( ) { } private void registerCommands ( ) { } public static void reloadConfigs ( ) { } @ Override public void onDisable ( ) { } public static void kick ( Player p ) { } @ Override public boolean onCommand ( CommandSender sender , Command cmd , String label , String [ ] args ) { } public static void ClearKit ( Player p ) { } public static void displayHelp ( CommandSender s , int page ) { } public static void cfgSetter ( String path , Object value ) { } public static void giveSpawnItems ( Player p ) { p . getInventory ( ) . setItem ( 0 , Kit . easyItem ( ITEM_SELECTOR , NETHER_STAR , 0 , null , 1 ) ) ; p . getInventory ( ) . setItem ( 1 , Kit . easyItem ( ITEM_SHOP , WATCH , 0 , null , 1 ) ) ; <START_BUG> ItemStack book = Kit . easyItem ( ITEM_BOOK , WRITTEN_BOOK , 3 , null , 1 ) ; <END_BUG> BookMeta meta = ( ( BookMeta ) ( book . getItemMeta ( ) ) ) ; List < String > rawPages = new ArrayList < String > ( ) ; if ( ( Main . bookData . get ( "Pages" ) ) == null ) { rawPages . add ( "&cThis<seq2seq4repair_space>is<seq2seq4repair_space>page<seq2seq4repair_space>1" ) ; rawPages . add ( "&1This<seq2seq4repair_space>is<seq2seq4repair_space>page<seq2seq4repair_space>2" ) ; Main . bookData . set ( "Pages" , rawPages ) ; Main . bookData . save ( ) ; } else rawPages = Main . bookData . getStringList ( "Pages" ) ; List < String > pages = new ArrayList < String > ( ) ; for ( String page : rawPages ) pages . add ( Main . addColor ( page ) ) ; meta . setAuthor ( "LonksKits" ) ; meta . setTitle ( "Tips" ) ; meta . setPages ( pages ) ; book . setItemMeta ( meta ) ; p . getInventory ( ) . setItem ( 2 , book ) ; p . getInventory ( ) . setItem ( 3 , Kit . easyItem ( ITEM_SPECTATOR , RAW_FISH , 3 , null , 1 ) ) ; } public static String addColor ( String string ) { } public void disable ( boolean disable ) { } public static void ClearCooldown ( Player p ) { } public static boolean canDamage ( Entity ent ) { } public static void damageIgnoreArmor ( Entity ent , double damage , boolean ignoreEnchantments ) { } public static boolean hasPermision ( CommandSender s , String perm ) { } public static void endOneVOne ( Player loser , String winnerName ) { } No newline ; at end ; of file ; }

Fix:
ItemStack book = Kit . easyItem ( ITEM_BOOK , WRITTEN_BOOK , 0 , null , 1 ) ;