Advertisement
SpyMomiji

Minecraft Server CMD

Dec 22nd, 2013
142
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.26 KB | None | 0 0
  1. import java.io.BufferedReader;
  2. import java.io.BufferedWriter;
  3. import java.io.File;
  4. import java.io.IOException;
  5. import java.io.InputStreamReader;
  6. import java.io.OutputStreamWriter;
  7. import java.util.ArrayList;
  8. import java.util.Scanner;
  9.  
  10. class Printer extends Thread{
  11.     BufferedReader printer;
  12.    
  13.     public Printer(Process targetCMD){
  14.         printer = new BufferedReader(new InputStreamReader(targetCMD.getInputStream()));
  15.     }
  16.    
  17.     public void run(){
  18.         while(true){
  19.             try {
  20.                 if(printer.ready())
  21.                 System.out.println(printer.readLine());
  22.                 else
  23.                     try {
  24.                         this.sleep(1);
  25.                     } catch (InterruptedException e) {
  26.                     }
  27.             } catch (IOException e) {
  28.                 // TODO Auto-generated catch block
  29.                 e.printStackTrace();
  30.             }
  31.         }
  32.     }
  33. }
  34.  
  35. class Writer extends Thread{
  36.    
  37.     Scanner keybroad = new Scanner(System.in);
  38.     BufferedWriter pw;
  39.    
  40.     public Writer(Process targetCMD){
  41.         pw = new BufferedWriter(new OutputStreamWriter(targetCMD.getOutputStream()));
  42.     }
  43.    
  44.     public void run(){
  45.         try {
  46.             while(true){
  47.                 pw.write(keybroad.nextLine());
  48.                 pw.newLine();
  49.                 pw.flush();
  50.             }
  51.         } catch (IOException e) {
  52.             e.printStackTrace();
  53.         }
  54.     }
  55.    
  56. }
  57.  
  58. public class Rocket {
  59.     static File local = new File(Rocket.class.getProtectionDomain().getCodeSource().getLocation().getPath());
  60.     public static void main(String[] args) throws InterruptedException {
  61.        
  62.         System.out.println("<i> Launching java...");
  63.        
  64.         String localString = local.getAbsoluteFile().toString();
  65.         ArrayList<String> arguments = new ArrayList<String>();
  66.         arguments.add("java");
  67.         arguments.add("-cp");
  68.         arguments.add(localString);
  69.         arguments.add("-jar");
  70.         arguments.add(localString+"\\minecraft_server.1.7.4.jar");//here is minecraft_server.x.x.x.jar
  71.         Process process = null;
  72.         ProcessBuilder command = new ProcessBuilder(arguments);
  73.        
  74.         System.out.println("<i> start server...");
  75.         try {
  76.             process = command.start();
  77.  
  78.             Printer printer = new Printer(process);
  79.             Writer writer = new Writer(process);
  80.             printer.start();
  81.             writer.start();
  82.            
  83.             process.waitFor();
  84.             printer.stop();
  85.             writer.stop();
  86.            
  87.             System.out.println("<i> press Enter to close");
  88.            
  89.         } catch (IOException e) {
  90.             // TODO Auto-generated catch block
  91.             e.printStackTrace();
  92.         }
  93.  
  94.        
  95.        
  96.        
  97.     }
  98.  
  99. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement