Как структурировать проект сайта в Eclipse - PullRequest
2 голосов
/ 08 октября 2009

Я запускаю проект веб-приложения, который будет иметь интерфейс Adobe Flex и сервер PHP / MySQL. Я разработал много настольных приложений на C ++, но я новичок в создании веб-приложений и в среде Eclipse. Я настроил свою текущую структуру проекта в Subversion как:

--MyWebsite
  +--tags
  +--branches
  +--trunk
       ---index.html
       +--images
       +--BasicHtmlSubSite
       +--PHPServices
       +--FlexComponentA

Я извлекаю ствол в E: \ Dev \ Projects \ MyWebSite \ workspace, и этот каталог также является моим рабочим пространством Eclipse (но я исключил папку .metadata из Subversion и проверяю только проекты).

Итак, мои вопросы:

1) Это хорошая структура сайта? В частности, насколько близко моя структура папок Subversion / Eclipse должна отражать возможную структуру папок в htdocs?

2) Как мне включить index.html (или, возможно, index.php когда-нибудь) в проект Eclipse? Я попытался поместить его в статический HTML-проект (StaticLandingPage) в рабочей области и добавить действие сборки FileSync, чтобы переместить его в корень веб-сервера, но папка StaticLandingPage также развернута на сервере, чего я не делаю хочу. Я просто хочу иметь возможность развернуть один HTML-файл из проекта в каталоге htdocs.

Я должен добавить, что я разрабатываю для Windows с Eclipse Ganymede, Adobe Flash Builder 4, PDT 2.x, Subclipse, FileSync и плагином WST (я думаю, что так и было). Я использую XAMPP для локального сервера.

Ответы [ 2 ]

1 голос
/ 08 ноября 2009

Это не очень хорошо работает в Eclipse.

Обычно вы хотите, чтобы ваш проект был зарегистрирован в Eclipse либо в папке, либо в корне вашего /trunk/. Очевидно, вы можете организовать вещи лучше, чем засунуть все в багажник, но в любом случае вот пример:

Пример:

tags
branches
trunk
   |- MyProject (Eclipse project)
   |      |- php/html/js/whatever files
   |
   |- MyOtherProject (Eclipse project)
   |      |- php/html/js/whatever files
   |
   |- ThirdParty (Also an Eclipse project)
          |- All third party libraries that are shared, if you so wish

Почему?

1) Проверка случайных файлов - это боль в Eclipse. Поскольку все в Eclipse является проектом, файл .project правил. Поэтому тот, кто проверяет вашу «папку», будет иметь ту же конфигурацию проекта, что и вы, что облегчит работу команды разработчиков.

2) Лучше организовано для нескольких проектов. Вместо того, чтобы иметь совершенно новый репозиторий для другого веб-проекта, вы можете просто иметь несколько папок.

1 голос
/ 07 ноября 2009

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

Мои потребности:

  1. Я хочу максимально увеличить повторное использование источника код.
  2. Я хочу, чтобы документация находилась в том же дереве репозитория, что и проект.
  3. Я хочу, чтобы несколько проектов опираться на общий, стабильный, проверенный исходные библиотеки.
  4. я не хочу исходные библиотеки разбросаны по несколько репозиториев.
  5. Я хочу держать багажник нетронутым для легкого загрузить на общедоступные сайты распространения.

Структура, которая работает лучше всего для меня, выглядит следующим образом:

-- ROOT
--- README.HTML
+-- trunk
... --- index.html
... +-- glue
... +-- topic[s]
+-- tags
... +-- library_version[s]
+-- branches
... +-- development
... ... +-- topic[s]
... ... ... --- eclipse .project
... ... ... --- eclipse .texlipse
... ... ... --- topic.pdf
... ... ... +-- design
... ... ... ... --- topic.tex
... ... ... ... +-- reuse
... ... ... ... +-- sections
... ... ... ... +-- implementation
... ... ... ... ... --- eclipse .project
... ... ... ... ... --- source.*
... ... ... ... ... +-- contrib[s]
... ... ... ... ... ... --- contrib.oem 
... ... ... ... ... +-- flavor[s]
... ... ... ... ... ...  --- eclipse or other project files
... +-- rfcs
... ... +-- topic[s]
... +-- published_topics
... ... +-- glue
... ... +-- topic[s]
...