2011-11-05 41 views
8

Pracuję nad projektem AS3 przy użyciu Flash Builder 4.5 (również z biblioteką Away3D 4.0 i Flex 4.5.1 SDK).VerifyError: Błąd # 1014: nie można znaleźć klasy

Dodaje również własną bibliotekę SWC, którą wcześniej kompilowałem do mojego projektu. Działa znaleźć, jeśli mogę zaimportować klasę w moim SWC biblioteki, jednak chcę mój bieg swf w autonomicznym flash player 11.

śledzę ten tutorial: http://help.adobe.com/en_US/flashbuilder/using/WSe4e4b720da9dedb5-4dd43be212e8f90c222-7ffb.html

Teraz mogę uruchomić mój app w Flash Player 11, ale dostałem błąd w czasie wykonywania:

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

A XXX to moja klasa w bibliotece SWC. Jak mam to naprawić?

+1

Rozwiązałem to! po dodaniu folderu Swc. Musi zostać scalony w kod! – Nohappy

+1

Czy możesz opracować swoje rozwiązanie? –

Odpowiedz

10

połączone w kodzie oznacza to, w właściwości projektu ->Flex Build Path ->Library Path ->ramowa Linka. Framework Lingage ma dwie opcje: Połączone w kod i RSL. Wybierz Połączony z kodem. To powinno rozwiązać twój problem.

+0

Po prostu chcesz dodać, że z jakiegoś powodu w programie Flash Builder 4.6, pozwala tylko scalić w kod, jeśli dodasz folder SWC. Dodanie pliku SWC nie pozwala z jakiegoś powodu na scalanie kodu ... – Martamius

+0

Jeśli nie możesz użyć _Merge do code_ dla swoich RSL, możesz rozważyć reorganizację kolejności referencyjnej bibliotek, więcej szczegółów [tutaj] (http://www.kahunaburger.com/2009/04/08/flash-player-verifyerror-error-1014-with-rsls/) –

3

W moim przypadku mieliśmy zagnieżdżone odniesienie do tej samej biblioteki, która musiała zostać wczytana, zanim inna biblioteka również z niego korzysta. Ta poprawka może zostać osiągnięta przez odznaczenie "Automatycznie określ porządkowanie bibliotek na podstawie zależności" i przeniesienie biblioteki do łańcucha bibliotek ścieżek kompilacji. Flash Builder nie był w stanie określić prawidłowej podstawy zamówienia w zależnościach, ponieważ mieliśmy dwie różne wersje tej samej biblioteki. Błąd wystąpiłby tylko podczas pracy.

1

Miałem ten problem po zainstalowaniu środowiska AIR 3.9 i próbie uaktualnienia projektu.

Było również powiedzenie, że wystąpił błąd RSL, przed rzuceniem kolejnych błędów # 1014.

Zadziałało po ustawić textLayout.swc rodzaj łącza w zaawansowanych ustawieniach ActionScript do „połączyła się kodem” zamiast domyślnego (RSL)

nadzieję, że to pomaga!

5

Wystąpił ten problem podczas próby zbudowania projektu przy użyciu rozszerzenia natywnego.

Klasy w NE nie zostały znalezione w środowisku wykonawczym, ale były dostępne w programie Flash Builder.

Okazało się, że domyślnie plik .ANE nie został skopiowany do urządzenia.

Aby rozwiązać ten problem, należy zmienić następującą właściwość projektu:

ActionScript Budowa Opakowania -> Apple iOS -> Native Rozszerzenia ->Sprawdź 'pakiet' dla ANE

Nie mam pojęcia, dlaczego to nie był domyślnie uwzględniony. Po usunięciu zaznaczenia opcji "Pakiet" pojawi się ostrzeżenie informujące, że może to spowodować problemy w czasie wykonywania!

1

Odkąd wylądował na tej poszukiwań stronę dla tego komunikatu o błędzie i żadne z powyższych rozwiązań nie pracował dla mnie, oto jak udało mi się obejść:

Wydaje się, że ten błąd ma miejsce szczególnie jeśli to stary biblioteki skompilowane ze starym kompilatorem, ale skompiluj aplikację z nową. Niestety błąd czasami się uruchamia, a kiedy kompilujesz ponownie, nie działa; w innych przypadkach działa dobrze w wersji do debugowania, ale potem kończy się niepowodzeniem w wydaniu.

Co pracował dla mnie jest to obojętne obiektów w głównej aplikacji, które są instancjami klasy że zweryfikowania błąd narzeka:

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

Przynajmniej w moim przypadku błędy opalane tylko dla klas, które były nie używane bezpośrednio w aplikacji, ale tylko wewnętrznie w kodzie biblioteki SWC, więc mając obiekty obojętne w głównej aplikacji zmuszam Flash Builder do włączenia tych klas do kompilacji.

W niektórych przypadkach może być konieczne znalezienie pliku SWC, który zawiera daną klasę, ponieważ nie jest częścią biblioteki swc, której używasz, ale jest to ponownie biblioteka, z której korzysta ten plik SWC.

Powiązane problemy