Избавление от пустых cpp-файлов для интерфейсов в Rhapsody

#makefile #rhapsody

#makefile #rhapsody

Вопрос:

В моем проекте я хочу избавиться от тонны пустых и бессмысленных cpp-файлов для интерфейсов в IBM Rational Rhapsody.

Установка CPP_CG:File:Generate в Specification значение дает только генерацию файла заголовка класса, что почти то, что я хочу. Но makefile (gpj) по-прежнему ищет *Ifc.cpp досье. Есть ли прямой способ исключить эти cpp-файлы из makefile?

Существует опция CG::File::AddToMakefile , которая работает только для файлов компонентов. Я нашел некоторую информацию о том, что он работал раньше, но с Rhapsody 8 он перестал работать.

Ответ №1:

Вы должны иметь возможность принудительно подавлять либо заголовок, либо файл реализации интерфейса, используя эти свойства. Однако!

Rhapsody ожидает найти файл cpp интерфейса, и его подавление вызовет проблемы с функцией roundtrip — Roundtrip происходит не только явно, но и по умолчанию неявно срабатывает при сохранении проекта или переключении фокуса с редактора кода на model browser.

Во время этого раунда Rhapsody попытается «исправить» модель, заменив отсутствующий файл cpp. За этим последуют сообщения об ошибках в обратном направлении. Игнорирование ошибок и продолжение обхода, вероятно, приведет к дублированию элементов и всевозможным беспорядкам.

Другими словами, то, что вы пытаетесь сделать, на самом деле не поддерживается и является плохой идеей.