4

我试图在我的入口点中有一个 Java 计时器:

Timer timer = new Timer();
timer.schedule(
   new TimerTask() {
       public void run() {
           //some code
       }
   }
   , 5000);

但是当试图编译这个时,我得到: No source code is available for type java.util.Timer; 你忘了继承一个必需的模块吗?

我能做些什么来解决这个错误?

4

2 回答 2

14

在 GWT 中,您只能使用所有 Util 包类。

这是只有您可以从 util 类中使用的类列表。

您可以使用GWT Timer 类

示例(来自文档);

 public void onClick(ClickEvent event) {
    // Create a new timer that calls Window.alert().
    Timer t = new Timer() {   //import (com.google.gwt.user.client.Timer)
      @Override
      public void run() {
        Window.alert("Nifty, eh?");
      }
    };

    // Schedule the timer to run once in 5 seconds.
    t.schedule(5000);
  }
于 2013-03-20T15:57:24.967 回答
5

如果您使用的是 Libgdx,则可以使用libgdxTimer基础架构来安排工作以在将来运行:

Timer t = new Timer();
t.scheduleTask(new Timer.Task() { 
      public void run() { /* some code */ } 
  }), /* Note that libgdx uses float seconds, not integer milliseconds: */ 5);

这样,您可以在独立于平台的代码中安排计时器。(特定于 GWT 的解决方案仅适用于项目的平台相关部分。)

于 2013-03-20T16:31:26.827 回答