Compiler toutes les classes d'un projet

5 views
Skip to first unread message

Philippe Cordel

unread,
Jan 29, 2017, 4:25:40 AM1/29/17
to Groupe des Eiffelistes Francophones
Y a t il un moyen de compiler toutes les classes d'un projet dans EiffelStudio, c'est à dire toutes celles qui sont dans le(s) répertoire(s) qu'elles soient dans le système ou non ?
Ça serait bien pratique pour les phases de spécifications et pour avoir le diagramme des classes complet

Jocelyn Fiat

unread,
Jan 31, 2017, 8:11:42 AM1/31/17
to groupe_eiffelis...@googlegroups.com
La solution la plus simple c'est de convertir le projet en library.
Si c'est deja une library ... alors juste compiler le projet avec EiffelStudio
Sinon ca passe juste par la modification du fichier .ecf

Par exemple, si on a un projet  "mon_application", il faut 
1) ajouter une target ` <target name="lib_mon_application" extends="mon_application"><root all_classes="true"/></target>  `
2) et ajouter l'attribut  ` library_target="lib_mon_application" `  dans le tag "<system ...." du ecf

Le point 2) permet de dire que le .ecf correspond à une library, et donc compilable en tant que telle, et le point 1) permet de dire de compiler toutes les classes.
En fait, en regardant les .ecf des bibliothèques d'EiffelStudio, on retrouve le `<root all_classes="true"/>` .. et le `library_target=...`

-- Jocelyn


Le 29 janvier 2017 à 10:25, Philippe Cordel <philipp...@gmail.com> a écrit :
Y a t il un moyen de compiler toutes les classes d'un projet dans EiffelStudio, c'est à dire toutes celles qui sont dans le(s) répertoire(s) qu'elles soient dans le système ou non ?
Ça serait bien pratique pour les phases de spécifications et pour avoir le diagramme des classes complet

--
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes "Groupe des Eiffelistes Francophones".
Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le concernant, envoyez un e-mail à l'adresse groupe_eiffelistes_francophones+unsubscribe@googlegroups.com.
Pour envoyer un message à ce groupe, envoyez un e-mail à l'adresse groupe_eiffelistes_franco...@googlegroups.com.
Visitez ce groupe à l'adresse https://groups.google.com/group/groupe_eiffelistes_francophones.
Cette discussion peut être lue sur le Web à l'adresse https://groups.google.com/d/msgid/groupe_eiffelistes_francophones/42f8d17b-93c4-4982-8a7f-bcff7c6c51f6%40googlegroups.com.
Pour obtenir davantage d'options, consultez la page https://groups.google.com/d/optout.

Eric Bezault

unread,
Jan 31, 2017, 8:28:18 AM1/31/17
to groupe_eiffelis...@googlegroups.com
Personnellement, je travaille souvent avec deux fichiers ECF, et
donc deux sessions d'EiffelStudio: une avec <root all_classes="true"/>
pour avoir toutes les classes compilées, et une autre avec
<root class="..." feature="..."/> pour pouvoir executer mon application.

--
Eric Bezault
mailto:er...@gobosoft.com
http://www.gobosoft.com


On 1/31/2017 14:11, Jocelyn Fiat wrote:
> La solution la plus simple c'est de convertir le projet en library.
> Si c'est deja une library ... alors juste compiler le projet avec
> EiffelStudio
> Sinon ca passe juste par la modification du fichier .ecf
>
> Par exemple, si on a un projet "mon_application", il faut
> 1) ajouter une target ` <target name="lib_mon_application"
> extends="mon_application"><root all_classes="true"/></target> `
> 2) et ajouter l'attribut ` library_target="lib_mon_application" ` dans
> le tag "<system ...." du ecf
>
> Le point 2) permet de dire que le .ecf correspond à une library, et donc
> compilable en tant que telle, et le point 1) permet de dire de compiler
> toutes les classes.
> En fait, en regardant les .ecf des bibliothèques d'EiffelStudio, on
> retrouve le `<root all_classes="true"/>` .. et le `library_target=...`
>
> -- Jocelyn
>
>
> Le 29 janvier 2017 à 10:25, Philippe Cordel <philipp...@gmail.com
> <mailto:philipp...@gmail.com>> a écrit :

Philippe Cordel

unread,
Jan 31, 2017, 10:58:59 AM1/31/17
to Groupe des Eiffelistes Francophones
Merci à vous deux
je n'ai plus que l'embarras du choix

A bientôt

Philippe Cordel

unread,
Feb 1, 2017, 1:50:50 AM2/1/17
to Groupe des Eiffelistes Francophones
J'ai donc modifier l'ecf en mettant target all_classes=true
Ça marche très bien mais lorsque j'ouvre mon projet le diagramme qui s'affiche est celui de la grappe elks (très joli pour de l'art abstrait !)
Il suffit de redéfinir la cible sur le cluster de mon projet
Mais c'est pas très "présentable" lorsqu'il faut convaincre.

Y a t il un moyen d'afficher directement le diagramme de mon projet ?


Le dimanche 29 janvier 2017 10:25:40 UTC+1, Philippe Cordel a écrit :
Reply all
Reply to author
Forward
0 new messages