У меня есть несколько приложений, которые использовали одни и те же типы данных. Я продублировал их в каждой спецификации OpenAPI c. Boo.
Я видел свет и перетянул эти типы в библиотеку, и они помечены как импортированные в приложениях. Библиотека имеет свою собственную версию openapi c для типов данных и публикуется в репозитории maven.
Когда я собираю одно из моих зависимых приложений, мне нужно получить openapi spe c для библиотеки, поэтому я могу разрешить $ refs для этих типов данных. Я заменю ссылки на типы данных удаленными ссылками на типы данных в библиотеке spe c. Сборка приложения не может полагаться на сборку имеющейся библиотеки.
Я прикрепляю файл openapi30.yaml как артефакт к библиотеке, и я могу увидеть файл в репозитории и загрузить его вручную.
publishing {
publications {
mavenJava(MavenPublication) {
from components.java
artifact 'openapi30.yaml'
}
}
}
![And the respository shows](https://i.stack.imgur.com/efshA.png)
Правильно ли я подхожу к этой проблеме? Если да, как build.gradle моих приложений получает этот файл и получает к нему доступ? Глядя в .gradle / caches, он тянет только файлы jar, pom и .module, а не мои spe c.