Ich erstelle Code für Schnittstellen, die in IBM Rational Rhapsody angegeben sind. Rhapsody generiert implizit Include-Anweisungen für andere Datentypen, die in meinen Interfaces verwendet werden. Aber ich hätte gerne mehr Kontrolle über die include-Anweisungen, also spezifiziere ich sie explizit als Textelemente in den Quellartefakten der Komponente. Daher möchte ich verhindern, dass Rhapsody die Include-Anweisungen selbst generiert. Ist das möglich?So vermeiden Sie implizite Include-Anweisungen in der Rhapsody-Codegenerierung
Antwort
Schließlich habe ich die Eigenschaften gefunden, die Rhapsody die erforderliche Ausgabe erzeugen lassen: GenerateImplicitDependencies
für mehrere Elemente und GenerateDeclarationDependency
für Type-Elemente. Wenn Sie diese deaktivieren, vermeiden Sie die Generierung von impliziten Include-Anweisungen.
Wenn dies möglich ist, ist es meistens mit Eigenschaften. Klicken Sie im Feature-Feld auf Eigenschaften und filtern Sie nach "Einschließen", um einige mögliche Kandidaten zu sehen. Nicht alle Eigenschaften haben Beschreibungen, was sie genau so machen, viel Glück.
EDIT:
ich einige Zeit damit verbracht als auch durch die Eigenschaften der Suche eines nicht bekommen finden konnte, was Sie wollen. Es scheint wahrscheinlich, dass Sie dies nicht mit der Basisversion von Rhapsody tun können. IBM lizenziert ein Add-on zur Anpassung der Code-Generierung, genannt Rules Composer (glaube ich); Dies würde Ihnen fast sicher erlauben, die Includes anzupassen, aber mit ziemlich hohen Kosten.
Es gibt zwei andere mögliche Ansätze. Abhängig davon, wie Sie die Include-Anweisungen anpassen, können Sie möglicherweise ein einfaches Shell-Skript schreiben, vielleicht mit sed, und dann nur dieses Skript ausführen, um Ihren Code jedes Mal zu aktualisieren, wenn Rhapsody es generiert. Der andere Ansatz wäre, die Rhapsody-API zu verwenden, um ein Plugin/Tool zu erstellen, das alle Schnittstellen durchläuft und die Quellartefakte entsprechend ändert. Ich habe diese Methode nicht selbst ausprobiert, aber ich weiß, dass meine Mitarbeiter die API benutzt haben, um ähnliche Dinge zu tun.
- 1. So zeichnen Sie implizite Gleichungen
- 2. So vermeiden Sie implizite Zeichenkonvertierung bei der Verwendung von Datenrahmen anwenden
- 3. Wie vermeiden oder erkennen Sie implizite Delegat Inferenz in C#?
- 4. Mehrere Quellordner: Vermeiden Sie implizite Kompilation mit Ant
- 5. So vermeiden Sie globale Variablen
- 6. So vermeiden Sie SQLiteException Sperrfehler
- 7. So vermeiden Sie zirkuläre Abhängigkeit
- 8. So vermeiden Sie ein NSCachedImageRep
- 9. So vermeiden Sie doppelten Code
- 10. So vermeiden Sie NullPointerException in If-Bedingung
- 11. So vermeiden Sie Namenskonflikte in JavaScript-Widgets
- 12. So vermeiden Sie Duplikate in arangoDB
- 13. So beenden Sie die implizite Klasse
- 14. So vermeiden Sie illegalen Speicherzugriff in CUDA
- 15. So vermeiden Sie das Abrunden in NSNumberFormatter
- 16. So vermeiden Sie complexTypes in XML-Schema
- 17. So vermeiden Sie Punkte in VS2008
- 18. So vermeiden Sie falsche Übereinstimmungen in der Übereinstimmungsvorlage
- 19. So vermeiden Sie, dass Daten in der Seitentabelle gespeichert werden
- 20. So vermeiden Sie Programme im Status D
- 21. So vermeiden Sie UIView Berührungsgesten überlappen
- 22. So vermeiden Sie den Aufruf von get_query_set()
- 23. So vermeiden Sie ERR_INSUFFICIENT_RESOURCES bei AJAX-Anrufen
- 24. So vermeiden Sie das Hinzufügen der SSMA_Timestamp-Spalte durch SSMA
- 25. So vermeiden Sie die Ausnahme EXC_RESOURCE - WAKEUPS?
- 26. So vermeiden Sie die Pan-Map bei der ersten Zoomansicht
- 27. So vermeiden Sie "Cross-Site-Skriptangriffe"
- 28. So vermeiden Sie Berechnungsfehler mit Primitiven
- 29. So deaktivieren/vermeiden Sie benutzerdefinierte Animationen nach der Bildschirmrotation
- 30. So vermeiden Sie Sql Query Timeout
Ich habe das schon gemacht, aber ich habe keine Eigenschaft gefunden, die tut, was ich brauche (vielleicht wird die richtige anders benannt, also habe ich sie verpasst). –