2013-09-27 2 views
0

Мне нужно найти конфигурацию или плагин для Eclipse, что делает компиляцию Eclipse тогда и только тогда, когда компиляция «ant clean all» и должна работать с разумной производительностью для огромного проекта , без необходимости выполнять тысячи настроек конфигурации в Eclipse. Я знаю, что другие IDE делают это из коробки, но мне нужно начать любить Eclipse. В настоящее время у меня есть проект, который отлично компилируется с «ant clean all», но для написания модульных тестов я считаю, что мне нужно убедить Eclipse в том, что проект тоже компилируется. Я пробовал Refresh и Project/Clean без успеха. Я также немного поработал с Project/Properties/Builders и добавил создатель муравьев. Несмотря на многообещающий путь, я смутился: мое рабочее пространство состоит из 80 различных проектов, и когда я обычно компилирую это, я перехожу в одну конкретную папку проекта в командной строке и делаю «ant clean all», и все разные подпроекты скомпилированы в одно приложение , Однако для Eclipse было бы слишком плохо работать, чтобы «муравьино очистить все» все время. Я был бы очень благодарен за любые идеи или ссылки?Как настроить Eclipse для компиляции в том и только в том случае, если ant компилирует

+0

Итак, ваш проект не компилируется с затмением? (или я что-то пропустил?) – ben75

+0

Нет, это не так. Поэтому я не могу запускать какие-либо модульные тесты из Eclipse. Тем не менее он скомпилируется с муравьем, который мы обычно скомпилируем, поэтому на самом деле нет синтаксической ошибки. – Hurve

+0

В основном моя самая большая проблема заключается в том, что я не могу запускать модульный тест из Eclipse и не знаю других быстрых способов сделать это. Также все красные маркеры немного тревожат. – Hurve

ответ

0

Итак, ваша проблема в том, что в eclipse нет правильного пути к классам для ваших модулей. Eclipse хранит путь к классу проекта в файле .classpath в корневом каталоге проекта.

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

Я думаю, что у вас есть 2 стратегии, чтобы сделать это работает под затмением (и используя преимущества затмения компилятора):

  1. создает затмение проект для каждого муравья модуля (т.е. по одному для каждого build.xml). Если ваша структура модулей плоская, это, вероятно, лучший вариант. НО вам придется вручную настраивать зависимости каждого модуля (добавлять зависимые модули в зависимости от проекта и экспортировать их (вкладка «экспорт» в окне пути к проекту)

  2. создать один проект затмения для всех ваших муравьиных модулей и добавить исходную папку "один за другим в classpath.Это, наверное, единственное решение, поддерживаемое eclipse, если ваши муравьиные модули не находятся в плоской иерархии. НО если вы начнете редактировать код в eclipse: у вас есть хорошие шансы ввести нежелательные (и, возможно, циклические) зависимости между вашими модулями, так как затмение будет видеть все, как огромный единый проект.

Если у вас есть какая-либо библиотека третьей стороны, вы также должны добавить их вручную к пути к классам.

+0

Хорошо, это звучит немного сложно для такого большого проекта, поэтому, возможно, лучше перейти на IntelliJ, который, согласно слухам, обрабатывает это автоматически. Я мог бы сделать это «невидимо» для других членов команды. – Hurve

+0

Я не думаю, что IntelliJ может сделать это автоматически. Главным преимуществом intellij является то, что он будет обрабатывать иерархические модули без проблем, но не будет поддерживать прозрачную синхронизацию между пользовательскими build.xml и внутренними файлами проекта (* .iml) – ben75

Смежные вопросы