2012-01-03 21 views
5

Tôi có rất nhiều thông tin lạ trong dự án của tôi trong Flash Builder, tại sao?Vấn đề về Flash Builder 4.6: Truy cập vào thuộc tính không xác định - làm sạch nó không phải là câu trả lời

"Loại không tìm thấy hoặc không phải là một hằng số thời gian biên dịch" và "Tiếp cận tài sản không xác định", "Gọi đến một phương pháp có thể không xác định"

Khi tôi đi đến những lớp và làm cho không gian "" và tiết kiệm, parrent lớp là ok, làm sạch không giúp đỡ trong thời gian dài.

Sự cố là gì?

mã ví dụ:

import utils.DbUtils; 
.... 
.... 
public function afterDbInit():void{ 
       personsCollection = DbUtils.getAllObjects(); 
       calendarViewId.loadDefaultCalendar(); 
      } 

flash-builder-issue

nhưng không phải vấn đề của mình với CODE, nó Flash Builder vấn đề, khi tôi tìm thấy DbUtils Lớp File, và opne nó, thực hiện một không gian hơn và tiết kiệm, vấn đề đã biến mất.

Dự án được soạn thảo nhưng tôi không thể sử dụng ctrl + lpm để đi đến tập tin lớp chọn, biên dịch doesnt nhìn thấy nó

personsCollection = DbUtils .getAllObjects();

nhưng sau vài debbuggging chạy, biểu tượng exlamation này, và dấu chấm màu cam xuất hiện trở lại


<fx:Script> 
     <![CDATA[ 
      import database.DBConnection; 
      import database.Database; 
      import database.DatabaseEvent; 
      import database.DatabaseResponder; 

tôi có tất cả các hàng nhập khẩu có

+0

đang xin vui lòng ... –

+0

Gọi đến một phương pháp có thể không xác định - một thông báo lạ – mihau

+0

Là mã với sự cố trong thư viện hoặc gọi mã trong thư viện? –

Trả lời

-1

Bạn chưa nhập khẩu các loại DatabaseEvent. Trên máy tính chạy Windows, Ctrl + Shift + O sẽ tổ chức nhập của bạn.

+0

tất cả hàng nhập khẩu là ok \t \t <[CDATA [ \t \t \t nhập khẩu database.DBConnection!; \t \t \t cơ sở dữ liệu nhập. Cơ sở dữ liệu; \t \t \t nhập cơ sở dữ liệu.DatabaseEvent; \t \t \t nhập cơ sở dữ liệu.DatabaseResponder; – mihau

+0

Đảm bảo 'database.DatabaseEvent' được định nghĩa –

+0

Mọi thứ được định nghĩa - Flash Builder chỉ phát điên. Đôi khi tôi chỉ cần thay đổi tên trong lớp cho Ví dụ - DbUtils -> thành DbUtilX - và thay đổi nó trong tất cả các dự án - sau khi vấn đề biến mất, Tại sao F ***? – mihau

0

Nếu DataBaseEvent là một lớp bên ngoài, không phải là gói đi kèm với Flex, bạn có thể thử tham chiếu nó bằng tên đầy đủ của nó.

Ví dụ, tôi đã nhận lỗi cùng với thực hiện tùy chỉnh của JSON (gói vk.api.serialization.json)

tôi đã phải thay đổi tất cả các dòng như

JSON.encode(data) 

để

vk.api.serialization.json.JSON.encode(data) 

Điều đó đã giúp ích.

1

Tôi gặp vấn đề tương tự với lớp chứa biến công khai. Nó cho thấy là "tài sản không xác định" khi cố gắng truy cập tài sản ngay cả khi mã hoạt động tốt. Quick Fix/Assist (Ctrl + 1) được yêu cầu tạo thuộc tính, vì vậy tôi đã nhập tab và nhấn enter để hoàn thành mã giúp tôi thực hiện điều đó. Trình chỉnh sửa đã xóa cảnh báo nhưng không có thay đổi đối với lớp học của tôi.

Tôi muốn nói đây là một lỗi kỳ lạ và chỉ muốn cho bất kỳ ai khác gặp sự cố này rằng Quick Fix/Assist thực sự có thể trợ giúp với vấn đề này.

2

Tôi đã tìm thấy điều gì đó thú vị về cảnh báo "Truy cập vào tài sản không xác định" của tôi có thể giúp ai đó.

Tôi đang làm việc trên mô-đun (ofcMtc.mxml và ofcMtc.as) mà sau này tôi quyết định không thích thiết kế. Vì vậy, tôi đã đổi tên cả tệp mxml và tập lệnh hành động thành một tên khác để tiết kiệm công việc (ofcMtcOLD.mxml và ofcMtcOLD.as).

Sau đó, tôi đã tạo lại cùng một mô-đun đó bằng cách sử dụng tên tệp gốc cho cả mxml và tập lệnh hành động.

Bây giờ hãy nhớ rằng phiên bản OLD vẫn có một dòng mã trong mxml liên kết tên tệp kịch bản lệnh hành động ban đầu (mx: script source = "ofcMtc.as") - và nó đã được chọn trong bản dịch - khiến các cảnh báo xuất hiện trong phiên bản mới của tôi.

Bằng cách xóa mx: mã tập lệnh khỏi tệp mxml OLD - các cảnh báo đã biến mất trong phiên bản mới.

Hy vọng điều này sẽ giúp ai đó.

0

Cách tiếp cận để chỉ định tên lớp đủ điều kiện cũng có hiệu quả đối với tôi.

Vì vậy, tôi thay đổi định nghĩa lớp từ

public class NumberInputBase extends TextInput

để

public class NumberInputBase extends mx.controls.TextInput

Các vấn đề liên quan