2009-05-12 12 views
1

Nous avons essayé de compiler ASDocs par rapport à un projet de bibliothèque Flex 3. Notre problème est que ASDocs refuse de reconnaître tout composant mxml personnalisé créé et utilisé dans la bibliothèque. Par exemple, si nous avons un contrôle AdvancedButton mxml personnalisé dans notre bibliothèque, et que nous essayons de l'utiliser dans une autre classe mxml dans la bibliothèque, le compilateur ASDocs commet une erreur sur le fichier de classe parent avec "Error: Type was not trouvé ou n'était pas une constante à la compilation: AdvancedButton ".Bibliothèque ASDocs Flex 3 Édition

Une erreur se produit également si nous essayons d'étendre notre composant personnalisé. Donc, si notre bibliothèque contient AdvancedButton qui étend Button, et ExtraAdvancedButton qui étend AdvancedButton, ASDocs sera "Impossible de localiser la classe de base spécifiée" AdvancedButton pour la classe de composant 'ExtraAdvancedButton' ". D'autre part, si AdvancedButton est référencé à partir d'une bibliothèque externe, nous n'obtenons pas d'erreurs.

Cela ne semble pas être un problème si les fichiers sont .as, pas .mxml. Dans notre cas, cependant, nous avons imbriqué des composants basés sur degrafa.

Les idées seraient grandement appréciées.

Répondre

0

Utilisez-vous le paramètre -library-path de asdoc?
Mais attendez, vous avez dit que vous n'obteniez pas d'erreurs si elle est référencée depuis une bibliothèque externe - donc vous utilisez déjà le chemin de la bibliothèque, n'est-ce pas? Flex 3 ASDoc ne documente pas mxml du tout. Donc, peut-être vous shud obtenir flex 4 sdk et essayez avec l'asdoc qui va avec.

2

J'ai eu le même problème récemment. L'astuce pour moi était d'ajouter -source-path "src" aux arguments du compilateur asdoc.

Voici la commande asdoc qui a fonctionné pour moi:

c:\work\prg\Flex>"c:\Program Files\Adobe\Flex Builder 3 Plug-in\sdks\3.3.0\bin\asdoc.exe" -doc-sources "src" -main-title "PRG documentation" -output "c:\work\prg\Flex\docs" -source-path "c:\work\XmlMappingAS3\src" -source-path "assets\css" -source-path "c:\Program Files\Adobe\Flex Builder 3 Plug-in\sdks\3.3.0\frameworks\projects\framework\src" -source-path "c:\Program Files\Adobe\Flex Builder 3 Plug-in\sdks\3.3.0\frameworks\projects\rpc\src" -external-library-path "c:\work\commonLibraries\Flex\as3commons-reflect-1.0.0.swc" -external-library-path "c:\work\commonLibraries\Flex\Cairngorm.swc" -external-library-path "c:\work\commonLibraries\Flex\spring-actionscript.swc" -external-library-path "c:\work\commonLibraries\Flex\xpath-as3-1.0.0.swc" -external-library-path "c:\work\commonLibraries\Flex\as3corelib.swc" -external-library-path "c:\work\commonLibraries\Flex\as3reflect.swc" -source-path "src" 

En outre, une grande aide serait d'utiliser le générateur de documentation ActionScript FlashDevelop (qui est, en fait, ce que je faisais). Si vous installez FlashDevelop sur un environnement Windows dans "c: \ Program Files \ FlashDevelop", le Générateur de documentation se trouve dans "c: \ Program Files \ FlashDevelop \ Tools \ asdocgen \ ASDocGen.exe".

Bonne chance!

2

J'ai passé une bonne heure à essayer de générer des ASDocs pour mon projet Flex et j'ai continué à recevoir des erreurs concernant le fait de ne pas pouvoir trouver la classe de base x/y/z. En fin de compte je l'ai trouvé était parce que je ASDoc ne dis pas l'emplacement des fichiers Flex SWC:

(For me) C:\Program Files\Adobe\Flex Builder 3 Plug-in\sdks\3.4.0\frameworks\libs 

Intégrer ce chemin dans un argument -library-path supplémentaire et vous devriez trouver arrête toute erreur de ne pas trouver des classes de base .

Cela semble similaire au problème d'origine décrit ci-dessus, à savoir qu'il manque des liens vers l'emplacement de ces composants personnalisés. Assurez-vous que le répertoire de base est inclus et qu'il contient ces fichiers .as de composant personnalisé