Управление зависимостями с Eclipse и CVS - PullRequest
2 голосов
/ 06 января 2009

У меня есть немного кода для DLL, которая нужна двум или более проектам в eclipse. В настоящее время каждый проект имеет копию кода и строит DLL отдельно. Я хочу разделить код DLL в отдельный проект Eclipse, чтобы было общее местоположение. Но я хочу избежать ситуации, когда мы должны построить dll в одном проекте, затем скопировать dll обратно в другие проекты и проверить dll для каждого соответствующего проекта. Это создаст dll для каждого проекта, который не отслеживается с точным кодом, с которым он был построен.

Есть ли способ как-то символически связать dll с другим проектом затмения, который использует CVS в качестве системы контроля версий, чтобы можно было определить, какая версия кода использовалась для создания dll? Я делаю это слишком сложным или упускаю что-то очевидное?

Я думал о рабочих наборах в менеджере пакетов для eclipse, но мне нужно больше узнать о том, как использовать их с CVS, чтобы не превращать это в кошмар для следующего человека, который проверяет это и не может понять, почему их проект не скомпилируется.

Спасибо.

Ответы [ 2 ]

2 голосов
/ 12 февраля 2009

А как насчет создания новой папки в отдельном проекте. В расширенном разделе создания новой папки есть возможность ссылки на другое место в файловой системе.

Или вы также можете создать контейнерный проект, который использует файл projectset.psf. Имейте ссылку на файл projectset для различных проектов в вашем хранилище. Если вы хотите проверить этот проект, извлеките контейнер, щелкните правой кнопкой мыши файл проекта и выберите «Импорт набора проектов» ...

0 голосов
/ 23 января 2009

Если вы работаете с одним рабочим пространством, вы получите три проекта, каждый из которых зеркально отображен в CVS: один - это dll, другие - это проекты, использующие dll (настроенная как зависимость проекта этих проектов от проекта dll) .

С тремя проектами я бы не стремился к рабочим наборам - они хороши для управления многими проектами в одном рабочем пространстве, для трех проектов я бы счел их излишними. Я обычно стремлюсь к нескольким рабочим областям вместо рабочих наборов.

Относительно следующего человека, работающего с этими проектами: Вам необходимо иметь некоторую документацию о том, как настроить ваши проекты. Вы можете сказать, что ваши файлы проекта затмения делают именно это (поскольку они определяют зависимость проекта от другого проекта), но это для машины - людям, как правило, нравятся другие средства связи.

Если вас беспокоит, что изменения в dll несовместимы с одним проектом (потому что лицо, применяющее эти изменения, не заботится о другом проекте), стремитесь к серверу сборки . Это будет создавать все проекты и зависимые проекты всякий раз, когда что-то под управлением версий изменяется, запускать все тесты, предоставлять номер сборки и упаковывать все это готовым к использованию. Таким образом, вы можете быть уверены, что - все, что есть в вашем результате - может быть воспроизведено, потому что сервер сборки не может вносить локальные (незафиксированные) изменения в код. Кроме того, сервер сборки будет сигнализировать о сбое (либо сломанном API, либо неудачных тестах) в момент последнего коммита (ну, спустя несколько минут) и возлагает бремя исправления повреждения на тот, который вызвал повреждение.

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