我正在嘗試更新由一個主文件和導入的AS3類組成的小型Flex AS3「項目」。不幸的是,在編譯期間,我得到錯誤1120:訪問未定義的屬性DEBUG。和編譯失敗。我已經使用Flex SDK 4.6和Flash Builder 4.5中的mxmlc並獲得相同的失敗。FLEX:公共靜態常量未導入,未定義
Flex並不是我的強項,所以我希望有人能指出錯誤。從我所瞭解的這個源代碼在2011年使用mxmlc編譯得很好。從導入文件
相關代碼:
package {
public class krpano_as3_interface {
public static var instance:krpano_as3_interface = null;
.
.
static public const STARTDEBUGMODE : int = 0xFF;
static public const DEBUG : int = 0;
,並從主AS3文件:
package {
.
import krpano_as3_interface;
public class soundinterface extends Sprite {
static public var krpano : krpano_as3_interface = null;
.
public function soundinterface() {
if (stage == null){
}else{
txt.htmlText = "krpano " + DEBUG::version + "\n\n" +
"<b>soundinterface plugin</b>" +
"\n\n(build " + DEBUG::builddate + ")";
}
}
如果我重命名或移動導入文件的編譯器抱怨說,它缺少。定義常量DEBUG的類應該被導入,爲什麼它不起作用?
非常感謝您的詳細解釋。實際上非常具有啓發性。爲了我的直接目的,最簡單的解決方案可能是註釋掉有問題的代碼。其實我已經這樣做了,所以我可以用我的修改進行編譯。如果有必要,我可以更直接地遵循你的建議。 說真的,非常感謝。 –
好消息是,您將能夠追蹤所有這些編譯器常量,因爲您的代碼在您執行之前無法編譯。與你給出的例子不同,這些常量可以用來打開/關閉部分代碼,以根據平臺等提供特定的功能。在這種情況下,你必須仔細修復它們。 – BotMaster