2014-09-09 2 views
1

Это работало отлично, используя Maven. Проект A будет зависеть от проекта B, и когда я загружу как Project A, так и Project B, тогда Project A будет использовать локально построенный банку для Project B, а не в зависимости от банки, извлеченной из Nexus.Как использовать локальный проект gradle в качестве зависимости для другого проекта локальной градиентности в Eclipse?

Все мои проекты теперь используют Gradle, и я не могу понять, как заставить их видеть друг друга.

+0

См. Http://stackoverflow.com/questions/13487145/gradle-eclipse-classpath-switching-between-snapshot-and-project-dependency?rq=1. – Fanick

ответ

1

См. Руководство пользователя Gradle, глава 51, «Управление зависимостями». См. Раздел 51.4.3, «Зависимости проектов» делает то, что вам нужно.

0

Если это только простой Проект Eclipse А зависит от проекта В, то это простое решение, что работает для меня (я должен был прочитать так долго, чтобы понять это! Почему это не очевидно?)

  • проект B является его собственный проект Gradle и не обязательно знать о других проектах - вы не должны делать ничего особенного для проекта Б
  • проект A:
  • settings.gradle

    include 'Project B' 
    
    project (':Project B').projectDir = new File(settingsDir, "../Project B") 
    
  • build.gradle

    dependencies { 
        compile project (':Project B') 
    } 
    

Сохраните два, и не Затмение -> Gradle -> Обновить зависимости, и теперь вы будете видеть Проект B в качестве фактического проекта Dependency в Зависимости Gradle для проекта A (мне пришлось использовать тире вместо пространств, поскольку Eclipse не позволял мне иметь пробелы в именах моих проектов Gradle). Eclipse Gradle Project Dependencies

Примечание: если строить эти проекты на удаленном сервере, убедитесь, что вы либо проверить эти два проекта, в том же хранилище управления версиями или убедитесь, что они в конечном итоге в том же месте относительно друг друга так, они находятся в Eclipse.