当前位置: 首页>>代码示例>>Java>>正文


Java MainLogger.shutdown方法代码示例

本文整理汇总了Java中cn.nukkit.utils.MainLogger.shutdown方法的典型用法代码示例。如果您正苦于以下问题:Java MainLogger.shutdown方法的具体用法?Java MainLogger.shutdown怎么用?Java MainLogger.shutdown使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在cn.nukkit.utils.MainLogger的用法示例。


在下文中一共展示了MainLogger.shutdown方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: main

import cn.nukkit.utils.MainLogger; //导入方法依赖的package包/类
public static void main(String[] args) {
	
    if(!(JAVA_VERSION.startsWith("1.8"))){
        System.out.println("[CRITICAL] This program runs on JRE(JRE) 1.8");
        System.out.println("[CRITICAL] You must use JRE(JDK) 1.8.");
        System.out.println("[CRITICAL] Java version: " + JAVA_VERSION);

        System.exit(0);
    }
    
    //Shorter title for windows 8/2012
    String osName = System.getProperty("os.name").toLowerCase();
    if (osName.contains("windows")) {
        if (osName.contains("windows 8") || osName.contains("2012")) {
            shortTitle = true;
        }
    }

    //启动参数
    for (String arg : args) {
        switch (arg) {
            case "disable-ansi":
                ANSI = false;
                break;
        }
    }

    MainLogger logger = new MainLogger(DATA_PATH + "server.log");

    System.out.println("Minecraft用 Jupiterサーバーを開始しています。");
    
    jobs.add(new Callable<Server>(){
        @Override
        public Server call() throws Exception {
            return new Server(logger, PATH, DATA_PATH, PLUGIN_PATH);
        }

    });

    try {
        threadpool.invokeAll(jobs);
        threadpool.shutdown();
        if(threadpool.awaitTermination(1L,TimeUnit.MINUTES)){// 1 minutes
            System.out.println("サーバーを停止しています...");
            logger.info("スレッドが停止しました。");

            for (Thread thread : java.lang.Thread.getAllStackTraces().keySet()) {
                if (!(thread instanceof InterruptibleThread)) {
                    continue;
                }
                logger.debug("Stopping " + thread.getClass().getSimpleName() + " thread");
                if (thread.isAlive()) {
                    thread.interrupt();
                }
            }

            ServerKiller killer = new ServerKiller(8);
            killer.start();

            logger.shutdown();
            logger.interrupt();

            CommandReader.getInstance().removePromptLine();

            System.out.println("サーバーが停止しました。");

            System.exit(0);
        }else{
            System.out.println("サーバーの停止に失敗しました。");
        }
    } catch (InterruptedException e) {
        e.printStackTrace();
        threadpool.shutdown();
    }
}
 
开发者ID:JupiterDevelopmentTeam,项目名称:Jupiter,代码行数:76,代码来源:Nukkit.java

示例2: main

import cn.nukkit.utils.MainLogger; //导入方法依赖的package包/类
public static void main(String[] args) {

        //Shorter title for windows 8/2012
        String osName = System.getProperty("os.name").toLowerCase();
        if (osName.contains("windows")) {
            if (osName.contains("windows 8") || osName.contains("2012")) {
                shortTitle = true;
            }
        }

        //启动参数
        for (String arg : args) {
            switch (arg) {
                case "disable-ansi":
                    ANSI = false;
                    break;
            }
        }

        MainLogger logger = new MainLogger(DATA_PATH + "server.log");

        try {
            if (ANSI) {
                System.out.print((char) 0x1b + "]0;Starting Nukkit Server For Minecraft: PE" + (char) 0x07);
            }
            new Server(logger, PATH, DATA_PATH, PLUGIN_PATH);
        } catch (Exception e) {
            logger.logException(e);
        }

        if (ANSI) {
            System.out.print((char) 0x1b + "]0;Stopping Server..." + (char) 0x07);
        }
        logger.info("Stopping other threads");

        for (Thread thread : java.lang.Thread.getAllStackTraces().keySet()) {
            if (!(thread instanceof InterruptibleThread)) {
                continue;
            }
            logger.debug("Stopping " + thread.getClass().getSimpleName() + " thread");
            if (thread.isAlive()) {
                thread.interrupt();
            }
        }

        ServerKiller killer = new ServerKiller(8);
        killer.start();

        logger.shutdown();
        logger.interrupt();
        CommandReader.getInstance().removePromptLine();

        if (ANSI) {
            System.out.print((char) 0x1b + "]0;Server Stopped" + (char) 0x07);
        }
        System.exit(0);
    }
 
开发者ID:FrontierDevs,项目名称:Jenisys3,代码行数:58,代码来源:Nukkit.java

示例3: main

import cn.nukkit.utils.MainLogger; //导入方法依赖的package包/类
public static void main(String[] args) {

        //Shorter title for windows 8/2012
        String osName = System.getProperty("os.name").toLowerCase();
        if (osName.contains("windows")) {
            if (osName.contains("windows 8") || osName.contains("2012")) {
                shortTitle = true;
            }
        }

        //启动参数
        for (String arg : args) {
            switch (arg) {
                case "disable-ansi":
                    ANSI = false;
                    break;
            }
        }

        MainLogger logger = new MainLogger(DATA_PATH + "server.log");

        try {
            if (ANSI) {
                System.out.print((char) 0x1b + "]0;Starting CoreX Server For Minecraft: PE" + (char) 0x07);
            }
            new Server(logger, PATH, DATA_PATH, PLUGIN_PATH);
        } catch (Exception e) {
            logger.logException(e);
        }

        if (ANSI) {
            System.out.print((char) 0x1b + "]0;Stopping Server..." + (char) 0x07);
        }
        logger.info("Stopping other threads");

        for (Thread thread : java.lang.Thread.getAllStackTraces().keySet()) {
            if (!(thread instanceof InterruptibleThread)) {
                continue;
            }
            logger.debug("Stopping " + thread.getClass().getSimpleName() + " thread");
            if (thread.isAlive()) {
                thread.interrupt();
            }
        }

        ServerKiller killer = new ServerKiller(8);
        killer.start();

        logger.shutdown();
        logger.interrupt();
        CommandReader.getInstance().removePromptLine();

        if (ANSI) {
            System.out.print((char) 0x1b + "]0;Server Stopped" + (char) 0x07);
        }
        System.exit(0);
    }
 
开发者ID:CoreXDevelopment,项目名称:CoreX,代码行数:58,代码来源:Nukkit.java

示例4: main

import cn.nukkit.utils.MainLogger; //导入方法依赖的package包/类
public static void main(String[] args) {

        //Shorter title for windows 8/2012
        String osName = System.getProperty("os.name").toLowerCase();
        if (osName.contains("windows")) {
            if (osName.contains("windows 8") || osName.contains("2012")) {
                shortTitle = true;
            }
        }

        //启动参数
        for (String arg : args) {
            switch (arg) {
                case "disable-ansi":
                    ANSI = false;
                    break;
            }
        }

        MainLogger logger = new MainLogger(DATA_PATH + "server.log");

        try {
            if (ANSI) {
                System.out.print((char) 0x1b + "]0;Starting Nukkit Server For Minecraft: PE" + (char) 0x07);
            }
            Server server = new Server(logger, PATH, DATA_PATH, PLUGIN_PATH);
        } catch (Exception e) {
            logger.logException(e);
        }

        if (ANSI) {
            System.out.print((char) 0x1b + "]0;Stopping Server..." + (char) 0x07);
        }
        logger.info("Stopping other threads");

        for (Thread thread : java.lang.Thread.getAllStackTraces().keySet()) {
            if (!(thread instanceof InterruptibleThread)) {
                continue;
            }
            logger.debug("Stopping " + thread.getClass().getSimpleName() + " thread");
            if (thread.isAlive()) {
                thread.interrupt();
            }
        }

        ServerKiller killer = new ServerKiller(8);
        killer.start();

        logger.shutdown();
        logger.interrupt();
        CommandReader.getInstance().removePromptLine();

        if (ANSI) {
            System.out.print((char) 0x1b + "]0;Server Stopped" + (char) 0x07);
        }
        System.exit(0);
    }
 
开发者ID:Creeperface01,项目名称:NukkitGT,代码行数:58,代码来源:Nukkit.java

示例5: main

import cn.nukkit.utils.MainLogger; //导入方法依赖的package包/类
public static void main(String[] args) {

        //Shorter title for windows 8/2012
        String osName = System.getProperty("os.name").toLowerCase();
        if (osName.contains("windows")) {
            if (osName.contains("windows 8") || osName.contains("2012")) {
                shortTitle = true;
            }
        }

        //启动参数
        for (String arg : args) {
            switch (arg) {
                case "disable-ansi":
                    ANSI = false;
                    break;
            }
        }

        MainLogger logger = new MainLogger(DATA_PATH + "server.log");

        try {
            if (ANSI) {
                System.out.print((char) 0x1b + "]0;Starting Apollo Server For Minecraft: PE" + (char) 0x07);
            }
            new Server(logger, PATH, DATA_PATH, PLUGIN_PATH);
        } catch (Exception e) {
            logger.logException(e);
        }

        if (ANSI) {
            System.out.print((char) 0x1b + "]0;Stopping Server..." + (char) 0x07);
        }
        logger.info("Stopping other threads");

        for (Thread thread : java.lang.Thread.getAllStackTraces().keySet()) {
            if (!(thread instanceof InterruptibleThread)) {
                continue;
            }
            logger.debug("Stopping " + thread.getClass().getSimpleName() + " thread");
            if (thread.isAlive()) {
                thread.interrupt();
            }
        }

        ServerKiller killer = new ServerKiller(8);
        killer.start();

        logger.shutdown();
        logger.interrupt();
        CommandReader.getInstance().removePromptLine();

        if (ANSI) {
            System.out.print((char) 0x1b + "]0;Server Stopped" + (char) 0x07);
        }
        System.exit(0);
    }
 
开发者ID:NycuRO,项目名称:Apollo-OLD,代码行数:58,代码来源:Nukkit.java


注:本文中的cn.nukkit.utils.MainLogger.shutdown方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。