2011-11-05 26 views
8

Sto sviluppando un progetto AS3 usando Flash Builder 4.5 (anche con le librerie Away3D 4.0 e Flex 4.5.1 SDK).VerifyError: Errore # 1014: impossibile trovare la classe

Inoltre, aggiungo la mia libreria SWC, che compilo precedentemente nel mio progetto. Funziona trovare se importare classe nella mia libreria SWC, però voglio che la mia corsa swf in uno stand-alone flash player 11.

ho seguire questo tutorial: http://help.adobe.com/en_US/flashbuilder/using/WSe4e4b720da9dedb5-4dd43be212e8f90c222-7ffb.html

Ora, potrei correre la mia app in un lettore flash 11, ma ho ricevuto un errore in fase di esecuzione:

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

E XXX è la mia classe nella libreria SWC. Come dovrei risolvere questo?

+1

L'ho risolto! quando aggiungi la cartella Swc. Deve essere fuso in codice! – Nohappy

+1

puoi approfondire la tua soluzione? –

risposta

10

fusi in codice significa questo, in proprietà del progetto ->Flex Build Path ->Biblioteca Percorso ->Linkage quadro. Il lingotto di riferimento ha due opzioni Fuso nel codice e RSL. Scegli Fuso nel codice. Questo dovrebbe risolvere il tuo problema.

+0

Voglio solo aggiungerlo per qualche motivo in Flash Builder 4.6, consente solo di unire il codice se aggiungi la cartella swc. L'aggiunta del solo file swc non consente di utilizzare il merge nel codice per qualche motivo ... – Martamius

+0

Se non puoi usare _Merge in code_ per le tue RSL, potresti prendere in considerazione la possibilità di riorganizzare l'ordine di riferimento delle librerie, maggiori dettagli [qui] (http://www.kahunaburger.com/2009/04/08/flash-player-verifyerror-error-1014-with-rsls/) –

3

Nel mio caso, avevamo un riferimento annidato alla stessa libreria che doveva essere caricato prima che anche l'altra libreria la usasse. Questa correzione può essere eseguita deselezionando la casella "Determina automaticamente l'ordinamento della libreria in base alle dipendenze" e sposta la libreria nella catena di librerie del percorso di generazione. Flash Builder non è stato in grado di determinare la base di ordine corretta per le dipendenze perché avevamo 2 diverse versioni della stessa libreria. L'errore si verificherebbe solo durante il tempo di esecuzione.

1

Ho riscontrato questo problema dopo aver installato AIR 3.9 e tentato di aggiornare un progetto.

Stava anche dicendo che c'era un errore RSL, prima di lanciare una serie di errori # 1014.

Ha funzionato dopo ho impostato il tipo di collegamento textLayout.swc in Impostazioni di ActionScript avanzate per 'fusa in codice' al posto del default (RSL)

Spero che questo aiuti!

5

Abbiamo riscontrato questo problema durante il tentativo di creare un progetto utilizzando un'estensione nativa.

Le classi all'interno del NE non sono state trovate in fase di esecuzione, ma erano accessibili in Flash Builder.

Si è scoperto che per impostazione predefinita il file .ANE non è stato copiato sul dispositivo.

Per risolvere questo problema, modificare la seguente proprietà del progetto:

ActionScript Corporatura Packaging -> Apple iOS -> estensioni native ->check 'pacchetto' per l'ANE

idea del perché non è stato incluso per impostazione predefinita. Quando si deseleziona "Pacchetto", viene visualizzato un messaggio di avvertenza che potrebbe causare problemi di runtime!

1

Da quando ho atterrato su questa pagina di ricerca per questo messaggio di errore e nessuna delle soluzioni di cui sopra funzionato per me, ecco come sono finalmente riuscito a lavorare intorno ad esso:

Sembra che questo errore si verifica in particolare quando si include vecchio librerie compilate con il vecchio compilatore ma compilate la vostra app con quella nuova. Sfortunatamente, a volte l'errore si attiva e quando si ricompone non lo fa; altre volte funziona bene nella versione di debug, ma poi fallisce nella versione.

Quello che ha funzionato per me è quello di includere oggetti fittizi nella vostra applicazione principale, che sono istanze della classe che l'errore di verificare lamenta:

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

Almeno nel mio caso gli errori attivato solo per le classi che erano non utilizzato direttamente nell'app ma solo internamente nel codice della libreria swc, quindi avendo gli oggetti fittizi nell'app principale costringo Flash Builder a includere tali classi nella compilation.

In alcuni casi, potrebbe essere necessario trovare prima swc che contiene la classe in questione poiché non fa parte della libreria swc in uso ma è di nuovo una libreria che swc utilizza se stessa.