2017-06-05 121 views
-1

我试图从我的'Clicker'类调用我的'Main'类的方法,但是我不断收到错误,这些错误取决于我调用的方法。 这是主要的课程。当前的错误是“令牌(XYZ)标识符上的语法错误,此标记后期望。”无法调用主方法

package me.removed.clicker; 

public class Main 
{ 
    public static void main(String[] args) {} 

} 

这是点击者类。

package me.removed.clicker; 

import java.awt.EventQueue; 
import java.awt.Robot; 
import java.util.Random; 
import java.util.logging.Level; 
import java.util.logging.LogManager; 
import java.util.logging.Logger; 
import javax.sound.sampled.AudioInputStream; 
import javax.sound.sampled.AudioSystem; 
import javax.sound.sampled.Clip; 
import javax.sound.sampled.FloatControl; 
import javax.sound.sampled.FloatControl.Type; 
import javax.swing.UIManager; 
import javax.swing.UIManager.LookAndFeelInfo; 
import me.dewgs.clicker.handler.KeyboardHandler; 
import me.dewgs.clicker.handler.MouseHandler; 
import me.dewgs.clicker.util.Time; 
import org.jnativehook.GlobalScreen; 

public class Clicker 
{ 
    public static Clicker instance; 
    private boolean LEFT_held; 
    private boolean LEFT_skip; 
    private Time LEFT_pressTime; 
    private boolean toggled; 
    private Random random; 
    private ClickerFrame clickerFrame; 
    private MouseHandler clickerHandler; 
    private KeyboardHandler keyHandler; 
    private Robot robot; 
    private Thread thread; 

    public boolean isToggled() 
    { 
    return this.toggled; 
    } 

    public void setToggled(boolean toggled) 
    { 
    this.toggled = toggled; 
    } 

    public Clicker() 
    { 
    this.LEFT_held = false; 
    this.LEFT_skip = false; 
    this.toggled = false; 
    this.random = new Random(); 
    try 
    { 
     GlobalScreen.registerNativeHook(); 
     this.clickerHandler = new MouseHandler(); 
     this.keyHandler = new KeyboardHandler(); 
     GlobalScreen.addNativeMouseListener(this.clickerHandler); 
     GlobalScreen.addNativeKeyListener(this.keyHandler); 
     this.robot = new Robot(); 
     LogManager.getLogManager().reset(); 
     Logger logger = Logger.getLogger(GlobalScreen.class.getPackage().getName()); 
     logger.setLevel(Level.OFF); 
    } 
    catch (Exception e) 
    { 
     e.printStackTrace(); 
    } 
    this.thread = new Thread(new Runnable() 
    { 
     public void run() 
     { 
     try 
     { 
      for (;;) 
      { 
      Thread.sleep(1L); 
      if ((Clicker.this.isToggled()) && 


       (Clicker.this.isLeftHeld())) 
      { 
       long CPSDelay = Clicker.this.generateCPSDelay(); 
       if (Clicker.this.getLeftPressTime() != null) 
       { 
       if (Clicker.this.getLeftPressTime().hasPassed()) 
       { 
        Clicker.this.setLeftPressTime(new Time(CPSDelay)); 
        Clicker.this.setLeftSkip(true); 
        Clicker.this.robot.mousePress(16); 
        Clicker.this.robot.mouseRelease(16); 

        Thread runThread = new Thread(new Runnable() 
        { 
        public void run() 
        { 
         try 
         { 
         AudioInputStream audioInputStream = 
          AudioSystem.getAudioInputStream(Clicker.class.getClassLoader().getResource("left_click.wav")); 

         Clip clip = AudioSystem.getClip(); 

         clip.open(audioInputStream); 

         float volume = -9.0F - Clicker.this.random.nextFloat() * 11.0F; 


         FloatControl gainControl = 
          (FloatControl)clip.getControl(FloatControl.Type.MASTER_GAIN); 
         gainControl.setValue(volume); 

         clip.start(); 
         } 
         catch (Exception localException) {} 
        } 
        }); 
        runThread.start(); 
       } 
       } 
       else 
       { 
       Clicker.this.setLeftPressTime(new Time(CPSDelay)); 
       Clicker.this.setLeftSkip(true); 
       } 
      } 
      } 
     } 
     catch (Exception e) 
     { 
      e.printStackTrace(); 
     } 
     } 
    }); 
    this.thread.start(); 
    } 

    public boolean isLeftHeld() 
    { 
    return this.LEFT_held; 
    } 

    public void setLeftHeld(boolean LEFT_held) 
    { 
    this.LEFT_held = LEFT_held; 
    } 

    public void destroy() 
    { 
    try 
    { 

    } 
    catch (Throwable e) 
    { 
     e.printStackTrace(); 
    } 
    System.exit(0); 
    } 

    public void openUI() 
    { 
    EventQueue.invokeLater(new Runnable() 
    { 
     public void run() 
     { 
     try 
     { 
      UIManager.LookAndFeelInfo[] installedLookAndFeels; 
      int length = (installedLookAndFeels = UIManager.getInstalledLookAndFeels()).length; 
      for (int i = 0; i < length; i++) 
      { 
      UIManager.LookAndFeelInfo info = installedLookAndFeels[i]; 
      if ("Windows".equals(info.getName())) 
      { 
       UIManager.setLookAndFeel(info.getClassName()); 
       break; 
      } 
      } 
      Clicker.this.clickerFrame = new ClickerFrame(); 
      Clicker.this.clickerFrame.setVisible(true); 
     } 
     catch (Exception e) 
     { 
      e.printStackTrace(); 
     } 
     } 
    }); 
    } 

    public boolean getLeftSkip() 
    { 
    return this.LEFT_skip; 
    } 

    public void setLeftSkip(boolean LEFT_skip) 
    { 
    this.LEFT_skip = LEFT_skip; 
    } 

    public Time getLeftPressTime() 
    { 
    return this.LEFT_pressTime; 
    } 

    public void setLeftPressTime(Time LEFT_pressTime) 
    { 
    this.LEFT_pressTime = LEFT_pressTime; 
    } 

    public ClickerFrame getClickerFrame() 
    { 
    return this.clickerFrame; 
    } 

    public long generateCPSDelay() 
    { 
    int minCPS = 12; 
    int maxCPS = 15; 
    double minDiff = 83.0D; 
    double maxDiff = 66.0D; 
    double randomDiff = this.random.nextDouble() * 17.0D; 
    return (long) (66.0D + randomDiff); 
    } 

    public static void setupClicker() 
    { 
    (Clicker.instance = new Clicker()).openUI(); 
    } 

    public static Clicker getClicker() 
    { 
    return instance; 
    } 
} 

我尝试调用setupClicker,甚至当我跟其他页面的步骤没有什么作品,

Clicker click = new Clicker(); 
click.setupClicker. 

是什么,我尝试和使用其他方法也无济于事。

仅供参考:我试图打开GUI并启动发声器本身。

+6

你应该张贴的错误你得到。 – Hoo

+3

你的'Main'类没有做任何事情...... – Reimeus

+1

为什么'click.setupClicker.'方法是静态的 – 2017-06-05 10:51:50

回答

0

我尝试调用setupClicker,甚至当我跟其他 网页没有什么作品,

Clicker click = new Clicker(); 
click.setupClicker. 

步骤你错过添加支架

public class Main 
{ 
    public static void main(String[] args) { 

      Clicker click = new Clicker(); 
      click.setupClicker(); 
    } 

}