2011-11-05 68 views
8

Tôi đang phát triển dự án AS3 bằng cách sử dụng Flash Builder 4.5 (cũng có thư viện Away3D 4.0 và Flex 4.5.1 SDK).VerifyError: Lỗi # 1014: không thể tìm thấy lớp học

Ngoài ra, tôi thêm thư viện SWC của riêng mình, mà tôi đã biên dịch trước đó vào dự án của mình. Nó hoạt động tìm nếu tôi nhập lớp trong thư viện SWC của tôi, tuy nhiên tôi muốn chạy swf của tôi trong nháy mắt máy nghe nhạc độc lập 11.

tôi làm theo hướng dẫn này: http://help.adobe.com/en_US/flashbuilder/using/WSe4e4b720da9dedb5-4dd43be212e8f90c222-7ffb.html

Bây giờ, tôi có thể chạy ứng dụng của tôi trong trình phát flash 11, nhưng tôi gặp lỗi trong thời gian chạy:

VerifyError: Error #1014: XXX class could not be found

Và XXX là lớp của tôi trong thư viện SWC. Làm thế nào tôi nên sửa lỗi này?

+1

Tôi đã giải quyết nó! khi bạn thêm thư mục Swc. Nó phải được hợp nhất thành mã! – Nohappy

+1

bạn có thể giải thích về giải pháp của mình không? –

Trả lời

10

Merged vào mã nghĩa này, trong tính của dự án ->Flex Build Path ->Thư viện Đường dẫn ->Khung Linkage. Khung lingage có hai tùy chọn Hợp nhất thành mãRSL. Chọn Hợp nhất thành mã. Điều này sẽ giải quyết vấn đề của bạn.

+0

Chỉ muốn thêm rằng vì lý do nào đó trong trình tạo flash 4.6, nó chỉ cho phép bạn nhập vào mã nếu bạn thêm thư mục swc. Việc thêm tập tin swc chỉ không cho phép bạn sử dụng nhập vào mã vì lý do nào đó ... – Martamius

+0

Nếu bạn không thể sử dụng _Merge thành code_ cho RSL của mình, bạn có thể xem xét sắp xếp lại thứ tự tham chiếu của thư viện, chi tiết hơn [ở đây] (http://www.kahunaburger.com/2009/04/08/flash-player-verifyerror-error-1014-with-rsls/) –

3

Trong trường hợp của tôi, chúng tôi đã có một tham chiếu lồng nhau vào cùng một thư viện cần tải trước thư viện khác cũng sử dụng nó. Sửa lỗi này có thể được thực hiện bằng cách bỏ chọn 'Tự động xác định thứ tự thư viện dựa trên các phụ thuộc' và di chuyển thư viện lên trong chuỗi thư viện Xây dựng đường dẫn. Trình tạo Flash không thể xác định đúng thứ tự dựa trên các phụ thuộc vì chúng tôi có 2 phiên bản khác nhau của cùng một thư viện. Lỗi sẽ chỉ xảy ra trong thời gian chạy.

1

Tôi gặp vấn đề này sau khi cài đặt AIR 3.9 và cố nâng cấp một dự án.

Người ta cũng nói rằng có lỗi RSL, trước khi ném một loạt lỗi # 1014.

Nó làm việc sau khi tôi đặt kiểu liên kết textLayout.swc trong ActionScript Advanced Settings để 'sáp nhập vào mã' thay vì mặc định (RSL)

Hope this helps!

5

Chúng tôi gặp sự cố này khi cố gắng tạo dự án bằng cách sử dụng Tiện ích mở rộng gốc.

Các lớp trong NE không được tìm thấy trong thời gian chạy, nhưng có thể truy cập được trong Flash Builder.

Hóa ra là theo mặc định, tệp .ANE không được sao chép vào thiết bị.

Để sửa lỗi này, thay đổi thuộc tính dự án sau:

ActionScript Build Bao bì -> iOS của Apple -> Extensions Native ->Kiểm tra 'trọn gói' cho ANE

Không biết tại sao nó không được bao gồm theo mặc định. Khi bạn bỏ chọn 'Gói', bạn sẽ nhận được một cảnh báo cho bạn biết rằng nó có thể gây ra các vấn đề thời gian chạy!

1

Kể từ khi tôi hạ cánh trên này tìm kiếm trang cho thông báo lỗi này và không ai trong số các giải pháp trên làm việc cho tôi, dưới đây là cách cuối cùng tôi quản lý để làm việc xung quanh nó:

Dường như lỗi này xảy ra đặc biệt là khi bạn bao gồm cũ các thư viện được biên dịch với trình biên dịch cũ nhưng biên dịch ứng dụng của bạn bằng trình biên dịch mới. Thật không may lỗi đôi khi cháy và khi bạn biên dịch lại nó không; vào những lúc khác nó hoạt động tốt trong phiên bản gỡ lỗi nhưng sau đó nó không thành công trong bản phát hành.

gì làm việc cho tôi là bao gồm đối tượng giả trong ứng dụng chính của bạn mà là thể hiện của lớp rằng xác minh lỗi phàn nàn về:

import some.classpath.to.TheClassThatFailsOnVerify; 
function YourMainApp(){ 
    var dummy:TheClassThatFailsOnVerify = new TheClassThatFailsOnVerify(); 
} 

Ít nhất là trong trường hợp của tôi các lỗi chỉ bị sa thải cho các lớp học mà là không được sử dụng trực tiếp trong ứng dụng mà chỉ nội bộ trong mã thư viện swc, do đó, bằng cách có các đối tượng giả trong ứng dụng chính, tôi buộc Flash Builder bao gồm các lớp đó trong trình biên dịch.

Trong một số trường hợp, trước tiên bạn có thể phải tìm SWC chứa lớp được đề cập vì nó không phải là một phần của thư viện swc mà bạn sử dụng nhưng lại là thư viện mà swc sử dụng.

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