Как создать общую конфигурацию запуска с помощью Eclipse?
У меня есть конфигурация запуска в моем затмении. В моем проекте у нас есть две ветки: DEV и STABLE.
Я хотел бы создать одну конфигурацию запуска для построения моего проекта независимо от того, в какой ветке он включен.
Пока, когда я устанавливаю Base directory
с одной из этих двух переменных: ${project_path}
, ${build_project}
, я сталкиваюсь с этой ошибкой:
Базовый каталог не существует или не может быть прочитан.
Это работает: ${workspace_loc:/my-project-dev-branch}
, но привязано к определенной ветки. Я должен дублировать эту конфигурацию для построения стабильной ветки.
- Итак, как я могу просмотреть фактическое содержимое
${project_path}
, ${build_project}
?
- Или какую переменную использовать для получения этого результата:
${workspace_loc:/${eclipse_variable_with_project_name}}
?
Ответы
Ответ 1
Я не уверен, что буду следить за тем, как ваши ветки представлены в рабочей области, но
-
${project_path}
представляет путь относительно вашей рабочей области
-
${build_project}
будет установлен только во время фактической сборки (не во время выполнения вашей программы).
На основе вашего описания вы хотите использовать ${project_loc}
вместо этого.
Nota: Проект должен быть выбран в перспективном проекте перед запуском конфигурации запуска. В противном случае вы получите сообщение, как на скриншоте ниже:
![enter image description here]()
Ответ 2
Поскольку вы уже создаете переменную String Substitution, запустив Debug- > String Substitution в Eclipse Preferences, чтобы иметь дело с отдельными путями, вы может:
- Создайте переменную, например.
branch_loc
, со значением ${workspace_loc:/my-project-dev-branch}
- Если пути немного отличаются друг от друга, например, по имени ветки, тогда вы можете создать переменную
branch
со значением, например. dev
, а затем создайте branch_loc
с помощью ${workspace_loc}\${branch}
Затем используйте ${branch_loc}
для вашего базового каталога Maven.
Было бы лучше, если бы все ветки использовали один и тот же путь, который позволяет git и mercurial. Затем вы можете использовать ${project_loc}
для своего базового каталога Maven. Для project_loc
, если вы укажете название проекта для своего проекта, например. ${project_loc:MY_PROJECT_NAME}
, тогда вам не нужно выбирать проект для работы.
Если вы щелкните правой кнопкой мыши по проекту и затем выберите "Свойства", вы увидите, что будет разрешено ${project_path}
, просмотрев путь и что ${project_loc}
будет разрешено, посмотрев на местоположение.
Ответ 3
Прежде всего, если вы используете git в качестве системы контроля версий: дважды не проверяйте проект, а просто переключайте между ветвями в одном проекте. git был разработан для этого и может делать это за считанные секунды. Таким образом, ваша проблема полностью исчезнет.
Если это не вариант, может быть, альтернатива может быть поставлена в конфигурации запуска под управлением версии. Установите параметр Общий файл, как показано с первой подсветкой:
![enter image description here]()
Затем вы можете запустить конфигурацию запуска, выбрав ее в соответствующем проекте (так как это действительно файл) и запустите его через контекстное меню. Тем не менее, я никогда не пробовал это с той же конфигурацией запуска, что и дважды.