реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Организация проектов в Eclipse, Переползаю в Eclipse, нужна ваша помощь
Непомнящий Евген...
сообщение Feb 9 2008, 08:17
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 771
Регистрация: 16-07-07
Из: Волгодонск
Пользователь №: 29 153



У меня есть svn-репозиторий с примерно такой структурой:
Код
brunches
tags
trunk
  common1
  common2
  proj1
    doc
    sources
    slick
  proj2
     ...

common1, 2 и т.д. - общие файлы, используемые во многих проектах. proj1 - папка проекта. В ней папки с исходниками, докой и файлами редактора (сейчас использую слик). В ветках и тагах структура такая же.
Хочу переползти на eclipse. И не понятно, как "прикрутить" сюда его проекты. Со сликом все просто - в проекте лежат пути относительно файла проекта, т.е. выгружаю всю нужную мне ветку в папку на винте и все работает.
В eclipse, насколько я понял, все пляшет относительно workspace, в частности в ней хранятся настройки клавиш, окошек и т.д. Т.е. желательно иметь одну общую workspace на все проекты.
Если я создаю проект еклипса в папке proj1\eclipse, то чтобы добавить в него файлы из proj1\sources и common1, 2..., мне надо использовать папки, привязанные к файловой системе (linked resources). Можно использовать переменные, однако для них надо задать абсолютные пути.
Т.е. у меня получается, что в каждой ветке лежит своя workspace, в ней заведена переменная pathToBrunch, в каждом проекте лежит папка eclipse (с проектом), пути в котором заданы относительно pathToBrunch. После checkout-а ветки на диск надо руками настроить эту переменную.
В этом подходе мне не нравится:
1. Мои личные настройки внешнего вида eclipse лежат в svn. Причем они разные по каждой ветке - т.е. если я перенастроил хоткеи в trunk и затем извлек какую-то старую версию, то хоткеи там будут старыми...
2. надо каждый раз не забывать настраивать эту переменную. Причем если забыл настроить, то переменная может указать на другую вытащенную на диск ветку и получится полная ж.

Вобщем, если кто поделится личным опытом по этой теме, буду признателен.
Go to the top of the page
 
+Quote Post
YKonstantin
сообщение Feb 9 2008, 08:58
Сообщение #2


Участник
*

Группа: Новичок
Сообщений: 28
Регистрация: 7-11-06
Пользователь №: 22 038



Цитата(Непомнящий Евгений @ Feb 9 2008, 10:17) *
В eclipse, насколько я понял, все пляшет относительно workspace


В файле проекта отсутствуют абсолютные пути.
Т.е. для конкретного проекта eclipse пляшет относительно каталога в котором лежат файлы ".cproject" и ".project".
Go to the top of the page
 
+Quote Post
Непомнящий Евген...
сообщение Feb 9 2008, 09:33
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 771
Регистрация: 16-07-07
Из: Волгодонск
Пользователь №: 29 153



Цитата(YKonstantin @ Feb 9 2008, 11:58) *
В файле проекта отсутствуют абсолютные пути.
Т.е. для конкретного проекта eclipse пляшет относительно каталога в котором лежат файлы ".cproject" и ".project".

согласен, но только "вниз". А вверх - не получается.
Т.е. если у меня структура:
Код
common
proj1
  sources
  eclipceProject

то по-идее путь к sources будет ..\sources. Однако eclipse на такой путь говорит, что он не существует, а если папку все равно создать и посмотреть в свойствах, то там будет адрес c:\sources....
Go to the top of the page
 
+Quote Post
YKonstantin
сообщение Feb 9 2008, 09:51
Сообщение #4


Участник
*

Группа: Новичок
Сообщений: 28
Регистрация: 7-11-06
Пользователь №: 22 038



Когда мне такое нужно, то я делаю :
"NewFolder->Advanced->Link to folder int the file system"

И соответственно создается виртуальное имя которое привязано к абсолютному пути.
Go to the top of the page
 
+Quote Post
Непомнящий Евген...
сообщение Feb 9 2008, 10:45
Сообщение #5


Знающий
****

Группа: Свой
Сообщений: 771
Регистрация: 16-07-07
Из: Волгодонск
Пользователь №: 29 153



Это ясно, однако в этом случае после чекаута надо руками настроить проект - либо абсолютные пути либо через переменную. Переменная хранится в воркспайсе, т.е. не получится работать в одном воркспайсе с разными версиями проекта...
В общем, по сравнению со сликом\кодеблоком\уестудио какой-то непонятный лишний геморрой.


И кстати, настройки воркспейса - хоткеи и т.д. можно как-то "расшарить" между несколькими ворксейсами?
Go to the top of the page
 
+Quote Post
YKonstantin
сообщение Feb 9 2008, 11:43
Сообщение #6


Участник
*

Группа: Новичок
Сообщений: 28
Регистрация: 7-11-06
Пользователь №: 22 038



Цитата(Непомнящий Евгений @ Feb 9 2008, 12:45) *
Переменная хранится в воркспайсе
В общем, по сравнению со сликом\кодеблоком\уестудио какой-то непонятный лишний геморрой.


В workspace хранятся общие настройки (позиции диалогов, цвета для подсветки текста, клавиатурные настройки).
Переменные и настройки проекта хранятся в файлах ".cproject" и ".project" которые создаются в каталоге проекта.
Т.о. когда вы кнопочкой Del удаляете проект из Project Explorer'а, то все намеки на проект напрочь удаляются из workspace. Однако ".cproject" и ".project" не удаляются (ну разве что укажете удалить содержимое проекта), и поэтому можно полностью восстановить проект в eclipse через "File->Import->Existing proect".

К примеру, я, при первом запуске eclipse указал ему запихать свой workspace подальше с моих глаз.
Теперь, когда создаю новые проекты то прямо указываю в каком каталоге будет создан новый проект.
И есстественно, что настройки сохраняемые в workspace "шарятся" между всеми проектами.
Go to the top of the page
 
+Quote Post
Непомнящий Евген...
сообщение Feb 9 2008, 11:59
Сообщение #7


Знающий
****

Группа: Свой
Сообщений: 771
Регистрация: 16-07-07
Из: Волгодонск
Пользователь №: 29 153



Насколько я понял из хелпа и экспериментов, path variables хранятся в workspace (вкладка windows\preferences\general\workspace\linked resources).
Go to the top of the page
 
+Quote Post
mdmitry
сообщение Feb 9 2008, 12:11
Сообщение #8


Начинающий профессионал
*****

Группа: Свой
Сообщений: 1 215
Регистрация: 25-10-06
Из: СПб
Пользователь №: 21 648



У меня несколько директорий с проектами, типа:
test1
test2
test3
src
inc

workspace для них в корне дерева
В makefile прописано где src (общие исходники для нескольких проектов) и хедеры (inc) и проекта файлы
Переключаюсь между проектами в среде
Для общей сборки всех проектов (типа релиза) имеется отдельный cmd-файл (можно сделать bat для winxx, для Linux можно написать скрипт на чем-либо (bash и т.д.) )


--------------------
Наука изощряет ум; ученье вострит память. Козьма Прутков
Go to the top of the page
 
+Quote Post
Непомнящий Евген...
сообщение Feb 9 2008, 12:30
Сообщение #9


Знающий
****

Группа: Свой
Сообщений: 771
Регистрация: 16-07-07
Из: Волгодонск
Пользователь №: 29 153



Цитата(mdmitry @ Feb 9 2008, 15:11) *
У меня несколько директорий с проектами, типа:
test1
test2
test3
src
inc

workspace для них в корне дерева


А в eclipse у вас src, inc - проекты? Или вы в каждый проект добавили папки со ссылками на них?
Если папки - то пути абсолютные или относительные?

И еще вопрос - вы системой контроля версий пользуетесь? Файлы проекты eclipse у вас тоже в ней лежат или как?

PS Для общей сборки использую scons, тут все ок.
Go to the top of the page
 
+Quote Post
mdmitry
сообщение Feb 9 2008, 12:48
Сообщение #10


Начинающий профессионал
*****

Группа: Свой
Сообщений: 1 215
Регистрация: 25-10-06
Из: СПб
Пользователь №: 21 648



Цитата(Непомнящий Евгений @ Feb 9 2008, 15:30) *
А в eclipse у вас src, inc - проекты? Или вы в каждый проект добавили папки со ссылками на них?
Если папки - то пути абсолютные или относительные?

И еще вопрос - вы системой контроля версий пользуетесь? Файлы проекты eclipse у вас тоже в ней лежат или как?

PS Для общей сборки использую scons, тут все ок.

Рабочие проекты test1-test3.
scr общая часть кода для этих проектов (общая инициализация, драйвера устройств и т.д.),
inc общие заголовочные файлы (*.h)
в makefile сделаны соответствующие ссылки на src и inc (проекты на работе, не помню точно какие пути (в смысле абсолютные или относительные)). Некоторая пляска с бубном была из-за src, чтобы правильно бралось (изучение документации по make сильно помогло)
системой контроля версий не пользуюсь (а надо бы)


--------------------
Наука изощряет ум; ученье вострит память. Козьма Прутков
Go to the top of the page
 
+Quote Post
Непомнящий Евген...
сообщение Feb 9 2008, 13:04
Сообщение #11


Знающий
****

Группа: Свой
Сообщений: 771
Регистрация: 16-07-07
Из: Волгодонск
Пользователь №: 29 153



Цитата(mdmitry @ Feb 9 2008, 15:48) *
Рабочие проекты test1-test3.
scr общая часть кода для этих проектов (общая инициализация, драйвера устройств и т.д.),
inc общие заголовочные файлы (*.h)

Это понятно. Мне интересно - как у вас к eclipse-проекту test1 подключена общая часть - src и inc?
Go to the top of the page
 
+Quote Post
YKonstantin
сообщение Feb 10 2008, 11:02
Сообщение #12


Участник
*

Группа: Новичок
Сообщений: 28
Регистрация: 7-11-06
Пользователь №: 22 038



Цитата(Непомнящий Евгений @ Feb 9 2008, 13:59) *
Насколько я понял из хелпа и экспериментов, path variables хранятся в workspace (вкладка windows\preferences\general\workspace\linked resources).


Это касается только linked resources общих для всего workspace.
Те linked folders, пример которых приводился ранее, касаются только конкретного проекта и хранятся исключительно в файлах описывающих проект (.project & .cproject).
Go to the top of the page
 
+Quote Post
Непомнящий Евген...
сообщение Feb 10 2008, 11:19
Сообщение #13


Знающий
****

Группа: Свой
Сообщений: 771
Регистрация: 16-07-07
Из: Волгодонск
Пользователь №: 29 153



Собственно вопрос таков - как включить в проект файлы, лежащие "над" проектом eclipse без использования абсолютных путей.
Я пробовал linked folders, однако они привязываются либо к абсолютному пути, либо к переменной workspace...
Go to the top of the page
 
+Quote Post
mdmitry
сообщение Feb 10 2008, 11:26
Сообщение #14


Начинающий профессионал
*****

Группа: Свой
Сообщений: 1 215
Регистрация: 25-10-06
Из: СПб
Пользователь №: 21 648



Цитата(Непомнящий Евгений @ Feb 9 2008, 16:04) *
Это понятно. Мне интересно - как у вас к eclipse-проекту test1 подключена общая часть - src и inc?

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


--------------------
Наука изощряет ум; ученье вострит память. Козьма Прутков
Go to the top of the page
 
+Quote Post
Непомнящий Евген...
сообщение Feb 10 2008, 11:31
Сообщение #15


Знающий
****

Группа: Свой
Сообщений: 771
Регистрация: 16-07-07
Из: Волгодонск
Пользователь №: 29 153



Цитата(mdmitry @ Feb 10 2008, 14:26) *
Все прописано в makefile, в парсере Eclipce эти заголовочные файлы доступны для просмотра и редактирования. Все на работе, в понедельник могу кусок makefile с этой конфигурацией прислать.


Меня интересует именно подключение к Eclipse - как оно у вас сделано?
Т.е. у вас есть eclipse-проект test1, как вы к нему подключили src и inc, чтобы Eclipse их видел и обрабатывал парсером?
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 8th July 2025 - 08:27
Рейтинг@Mail.ru


Страница сгенерированна за 0.02498 секунд с 7
ELECTRONIX ©2004-2016