2014-03-13 53 views
2

我有以下的Java類:的Java - 找不到符號類併發

import java.util.concurrent; 

public class Test{ 


    public static void main(String[] args){ 
      ExecutorService ex = Executors.newCachedThreadPool(); 

      for(int i=0; i<10; i++){ 
        ex.execute(new PeerThread(i+1)); 
      } 


    } 

}

出於某種原因,.concurrent無法正確導入。相反,它給我的錯誤:

import java.util.concurrent; 
      ^
symbol: class concurrent 
location: package java.util 

當然,這也給了我與執行人的使用錯誤,但是這是可以預料的,如果它不能找到concurrent包。

我下載了最新版本的SDK以及最新版本的普通Java(因爲我不確定這是否重要)。

java -version reports java 1.7.0_51。

http://www.java.com/en/download/installed.jsp也報告了Java 7 51。

如果有問題,我正在運行Mac OSX 10.9.1。

我相信這是愚蠢的。

在此先感謝。

+2

注:應該是'Executors' – fge

+0

是啊,那以後的錯誤上來。謝謝。 – user1646600

+0

我也編輯過這個問題,以防其他人對此進行搜索。 – user1646600

回答

3

你只是忘記了導入包中的所有類的明星java.util.concurrent

import java.util.concurrent.*; 

否則它認爲concurrent是從java.util進口一類,當然它不存在。

+0

謝謝!那樣做了。我有一段時間沒有用過Java。只要StackOverflow允許,我將盡快確認您的答案。 – user1646600

1

java.util.concurrent是一個不是Class的包。所以使用Specific類名從這個包導入或者使用*。
例如
使用import java.util.concurrent.AbstractExecutorService;

import java.util.concurrent.*;