2016-02-28 23 views
0

我一直在Groovy中做一些測試。我已經完成了這段代碼,並得到這個錯誤groovy.lang.GroovyRuntimeException - Groovy錯誤

抓住:groovy.lang.GroovyRuntimeException:此腳本或類無法運行。 它應該:

  • 具有主要方法,

  • 是JUnit測試或延伸的GroovyTestCase,

  • 實現Runnable接口,
  • 或是與註冊的腳本轉輪兼容。已知的參賽者: 無

class Prime { 

public static def prime(int x){ 
    boolean result = true; 
    int i, j, temp; 
    temp = 0; 

    if (x < 2){ 
     result = false; 
    }else { 
     for(i = 2; i < x && j == 0; i++){ 
      temp = x % i; 
      if(temp == 0){ 
       result = false; 
      } 
     } 
    } 
    return result; 
} 

static void main() { 

    long time_start, time_end, time_exe; 
    int primes = 0; 
    int N = (int) Math.pow(8, 5); 

    time_start = System.currentTimeMillis(); 

    def fichero = new File("salida2.out") 

    for (int i = 0; i <= N; i ++) { 
     if (prime(i) == true) { 
     String line = "" + i + " is prime."; 
     fichero.append(line); 

     } 
    } 

    time_end = System.currentTimeMillis(); 

    time_exe = time_end - time_start; 

    println("Execution time: " + time_exe + "milliseconds"); 
    println("Prime Numbers Found: " + primes); 
} 

} 
+0

我假設的問題,那麼,是「我究竟做錯了什麼?」如果是這樣,你的帖子應該清楚地表明問題是什麼。 – Castaglia

回答

1

main方法的簽名是不正確(需要字符串參數... args)。

將其更改爲:

public static void main(String... args) { 
+0

是的,@pczeus,你完全正確,祝你有美好的一天。謝謝yoy – Manuel

+0

@Manuel,如果這個答案解決了你的問題,請考慮接受它。 –

+2

在常規'靜態主(args)'已經足夠 –