Я строй .jar файл, который, во время компиляции, зависит от 3-й Logback артефактов (Logback-код, Logback-классические, Logback-расширения)Gradle Dependency Management
Они объявлены с compile
объем.
My jar builds, но когда я пытаюсь использовать его в другом проекте, я считаю, что мне нужно снова указать 3 зависимостей журнала, иначе классы не будут найдены. Я ожидал, что эти зависимости будут выполнены, объявив зависимость от моей банки.
Я новичок в градиенте и работаю с существующими сценариями, которые у меня есть только для самого детального понимания.
EDIT - Added some details of the dependency config
В проекте, который строит .jar файл, зависимости объявляются следующим
compile group: 'ch.qos.logback',name: 'logback-classic', version: '1.2.1' compile group: 'ch.qos.logback',name: 'logback-core', version: '1.2.1' compile group: 'org.logback-extensions',name: 'logback-ext-spring', version: '0.1.4'
Сосуд файл, который я изготовлять объявлен в «других» проектов зависимостей как compile group: 'mygroup',name: 'mylogback', version: '1.0.0-SNAPSHOT'
Эта зависимость вытаскивается из моего локального репозитория maven, в то время как зависимости от журнала происходят из nex мы репо.
Further Edit
Дерево зависимостей другого проекта есть это, что, казалось бы поддержать мое мнение о том, что проект не приносит его зависимости с ним ....
> | +--- commons-io:commons-io:2.5 | \---
> commons-collections:commons-collections:3.2.2
> +--- mygroup:mylogback:1.0.0-SNAPSHOT
> +--- ch.qos.logback:logback-classic:1.2.1 | +--- ch.qos.logback:logback-core:1.2.1 | \--- org.slf4j:slf4j-api:1.7.22
> +--- ch.qos.logback:logback-core:1.2.1
> +--- org.logback-extensions:logback-ext-spring:0.1.4 | \--- ch.qos.logback:logback-classic:1.1.1 -> 1.2.1 (*)
Resolution
Чтобы ответить на мой вопрос, возникла проблема из-за
- отсутствие плагина
maven-publish
в моем скрипте сборки - плохо сформированный
publishing
задание, которое опубликованоartefact:jar
. Изменение этого наfrom components.java
сделало трюк
Просьба показать, как вы объявляете зависимости. У меня такое ощущение, что они зависят от локальных файлов, а не от зависимостей maven/ivy. –
@LanceJava: Я добавил некоторые дополнительные детали, которые, я надеюсь, это то, что вы хотели видеть. – DaveH
Проблема заключается в том, что град не распознает logback как переходная зависимость вашего проекта. Теперь я не знаю, как это сделать с градием. Возможно, добавьте файл pom в ваш проект, который идентифицирует logback как среду исполнения. Я считаю, что град признал maven pom-файлы. – DwB