t.me/atinfo_chat Telegram группа по автоматизации тестирования

Java использовать классы одного проекта в другом

gradle
java
Теги: #<Tag:0x00007fb2f225f5d8> #<Tag:0x00007fb2f225f470>

(Pavel) #1

У меня есть вот такой проект и я хочу использовать некоторые классы этого проекта в другом проекте. Для этого как я вычитал, нужно собрать jar файл и подгрузить его в другой проект. Проблема в том, что у меня нет класса с функцией main, можно ли собрать jar без главного класса. Спасибо.


(Pavel) #2

Собрал файл jar, теперь вопрос, как его прикрутить к второму проекту?


(Vasily) #3

А посмотрите, в репозитории мавеновском локальном он не появился (пардон, у вас грэдл)?
Если появился - то можно просто указать как новую зависимость в другом проекте.


(Pavel) #4

Разобрался

Добавил в build.gradle первого проекта

apply plugin: 'io.qameta.allure'
apply plugin: 'java'
apply plugin: 'maven'

jar {
    baseName = 'roschat-ms'
    version = '1.0'
}

jar{
    enabled = true
}

Затем собрал jar файл

./gradlew clean build install --exclude-task test

Во втором проекте создал в корне директорию libs и скопировал туда jar файл. Затем во втором проекте добавил в build.gradle зависимость

dependencies {
    //loacl library
    compile fileTree(dir: 'libs', include: '*.jar')
}

И ура, могу подключать классы в новом проекте)))