Необходим совет для сборки Gradle - транзитивные зависимости (объявленные как API) не отображаются в пути к классу компиJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Необходим совет для сборки Gradle - транзитивные зависимости (объявленные как API) не отображаются в пути к классу компи

Сообщение Anonymous »

Публикация здесь для отзывов/советов.
У меня есть библиотека Java - Lib и проект Java - Consumer, каким-то образом зависимости от Lib< /strong> (объявленные как API, которые должны быть доступны потребителям) не читаются и не вызываются Java-проектом Consumer.
Проблема: когда Java-проект Consumer попробуйте вызвать библиотеку Java Lib, зависимости, объявленные как API, не вызываются в пути к классу компиляции (Потребителя). Это происходит только после сборки и публикации в удаленном репозитории (внутреннем сервере компании). Однако при локальном тестировании (сборка и публикация в локальном Maven) зависимости API вызываются правильно.
Любые советы/отзывы/советы приветствуются!!! Спасибо!
Ниже приведен файл build.gradle для Lib и Consumer:
Lib:

plugins {
id 'java-library'
id 'distribution'
id 'maven-publish'
}

dependencies {
api ("lib-1-to-be-exposed-to-consumer")
api ("lib-2--to-be-exposed-to-consumer")
implementation ("lib-3-to-be-used-internally")
}

java {
withSourcesJar()
}

publishing {
publications {
library(MavenPublication) {
from components.java
}
}
}

tasks.withType(GenerateMavenPom).all {
destination = "$buildDir/libs/${project.name}-${version}.pom"
}

repositories {
mavenLocal()
maven url {interalCompanyRepository}
}

build.finalizedBy generatePomFileForLibraryPublication

Потребитель:

plugins {
id 'java'
id 'distribution'
id 'maven-publish'
}

dependencies {
implementation ("Lib")
}
...


Подробнее здесь: https://stackoverflow.com/questions/789 ... -api-not-s
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»