2016-07-22 5 views
0

Необходимо создать два проекта Gradle Git в том же хранилище с помощью Eclipse IDE. Проект A зависит от сторонней библиотеки (JAR, исходного кода, Javadoc и туземцев) и проект B зависит от проект A.Должны ли быть добавлены зависимости через графический интерфейс Eclipse и файлы конфигурации Gradle?

Без Gradle, оба проекта будут созданы, и Git будет включен с Project Explorer > [Project Name] > Team > Share Project. Затем зависимости будут добавлены через Project Explorer > [Project Name] > Build Path > Configure Build Path, а затем Projects > Add и Libraries > Add External JARs (что также позволит указать расположение родственного исходного кода, Javadoc и туземцев). Это позволит автоматическое завершение кода Проект A от Проект B, а также исходный код и интеграция Javadoc в Eclipse.

С Gradle, должны ли settings.gradle или build.gradle файлы можно редактировать вручную, без добавления зависимостей с помощью графического интерфейса Eclipse, или оба должны быть использованы одновременно? Кроме того, каким образом этот эффект скрытые файлы должны быть проиндексированы Git (.project, .classpath, .settings, .gradle)?

Как это установить через Eclipse и Gradle?

ответ

0

Когда вы используете строительный инструмент, такой как Gradle (или maven), предполагается, что сборщик отвечает за настройку таких вещей, как зависимости проекта и пути к классам.

Такие конфликты с пользовательским интерфейсом Eclipse, который построен таким образом, чтобы вы могли управлять классами/зависимостями через свой собственный ui.

Но пользовательский интерфейс Eclipse контролирует только то, что eclipse использует как путь к классам, когда компилятор Eclipse JDT компилирует ваш код ... внутри Eclipse.

Итак, если вы так измените, Gradle не будет знать об этих зависимостях, и сборка не будет работать.

Да, это, безусловно, запутанным :-)

Надлежащая вещь, чтобы сделать, это управлять зависимостями и конфигурации проекта полностью через Gradle. Таким образом, это означает редактирование build.gradle и settings.gradle.

Инструменты (BuildShip или STS Gradle Tools) предоставляют «мост», чтобы попытаться настроить проекты Eclipse в соответствии с вашей сборкой.

Например, они могут предлагать команду «Обновить проект» или «Обновить зависимость» в контекстном меню проекта.

Даже если вы не используете инструмент Gradle, это верно. Затем вы должны использовать «» ecplise плагин Gradle и запустить команду как

gradle cleanEclipse eclipse 

Для создания конфигурации проекта Eclipse из сборки конфигурации.Затем импортируйте проект в Eclipse в соответствии с настройкой gradle. Также в этом случае было бы плохой идеей использовать Eclipse UI для внесения изменений в путь сборки, поскольку, в конечном счете, у него такая же проблема, изменения, которые вы делаете для этих сгенерированных файлов, могут заставить вещи скомпилироваться внутри Eclipse, но Gradle не знает вас что-то изменилось. И в следующий раз, когда вы запустите gradle cleanEclipse eclipse, ваши изменения также сдуваются.

Что касается ваших конкретных вопросов:

если settings.gradle или build.gradle файлы можно редактировать вручную ...

Да.

... без добавления зависимостей с помощью графического интерфейса Eclipse, ...

Да.

... или оба должны использоваться одновременно?

Нет, только конфигурируйте вещи в градиенте. Тогда 'синхронизировать его' затмить с некоторым инструментом (BuildShip/STS Gradle/gradle cleanEclipse eclipse)

Как этот эффект, который скрытые файлы должны быть проиндексированы Git (.project, .classpath, .settings, .gradle) ?

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

Так специально не ставят в мерзавца эти 'затмить метаданные'

  • .settings
  • .project
  • .classpath

ли поставить в мерзавца: Gradle обертка и его файл свойств.

Gradle также имеет папку .gradle. Он относится к градиенту, а не к затмению, но это кеши и вещи, которые являются «переходными». Вы тоже не хотите тех, кто находится в git.

+0

** Более подробная информация была добавлена ​​к моему вопросу, выше. ** Чтобы подтвердить, как указать исходное вложение, местоположение Javadoc и местную библиотеку зависимой библиотеки. Нужно ли все это устанавливать только через файлы конфигурации Gradle, а не через графический интерфейс Eclipse? – pm79080

+0

Если вы используете инструмент градации, такой как «STS Gradle tooling» или «BuildShip», я безнадежно загружаю исходные атташе автоматически. Если они не отображаются автоматически, то, возможно, град не сможет их найти. Для вашего более «подробного» вопроса. Я думаю, вам, может быть, лучше задать новый вопрос и указать, какой инструмент вы используете. Не все инструменты работают точно так же. Вы используете BuildShip? STS Gradle? Что-то другое? Задайте вопрос об этом конкретно. – Kris

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