2011-11-16 60 views
5

Android的Java項目,最少的代碼來重現問題:符號無法解析

Constants.java

package alex.restaurantfinder; 

public class Constants { 
    public static final String LOGTAG = "..."; 
} 

ReviewCriteria.java

package alex.restaurantfinder; 
import android.app.Activity; 

public class ReviewCriteria extends Activity { 
    static String s = Constants.LOGTAG;   // error 
} 

錯誤消息:

常量.LOGTAG無法解決。

我的錯誤在哪裏?

編輯。 問題是,當我在Eclipse中按下Ctrl鍵+ Shift + O,它增加了這一行:

 
import android.provider.SyncStateContract.Constants; 

它防止編譯器,我自己的常量類的工作。

+2

「常量」是否被編譯? –

回答

7

我想可能會有另一個自動導入的類叫Constants

你可以嘗試使用完全限定名稱alex.restaurantfinder.Constants.LOGTAG

+0

好猜。謝謝。 –

+0

沒問題我很樂意幫忙 –

0

你忘import alex.restaurantfinder.Constants;

編輯:對不起,沒有必要像類在同一個包,下面說...

+1

同一包裝不需要 –

+0

我們需要嗎?由於兩個班都在同一個包裏。 –

+0

哎呀,真的,我錯過了它在同一個包中的事實:)編輯 – Guillaume

1

我把代碼在Eclipse中,沒有發現錯誤。它編譯沒有任何問題。可能是你可以嘗試清理並重新編譯一次。

+0

不,它不適用於Fedora上的終端。 eclipse使用它自己的編譯器。 –