Spring - способы включить банку, которая сама использует Spring в проекте Spring

StackOverflow https://stackoverflow.com/questions/1427842

Вопрос

Мне нужно использовать банку стороннего производителя в моем проекте. Проект является проектом Spring, и в банке также используется Spring.

Есть ли способ, с помощью которого я могу включить сторонний jar в свой проект? Мне трудно найти каждую и каждую зависимость jar 3-й части и вставить ее.

Это было полезно?

Решение

Не должно быть проблемой. Как правило, контексты приложения могут загружаться независимо друг от друга в одной и той же JVM. Но если вы загружаете определения своих bean-компонентов из файла ресурсов в classpath (например, используя ClasspathXmlApplicationContext ), убедитесь, что местоположение и имя вашего файла не конфликтуют со сторонним JAR. Например, если они оба расположены по адресу /applicationContext.xml" в разных файлах JAR в classpath у вас будут проблемы. Сделайте свой уникальный.

Другие советы

Мне не совсем понятно, что вы имеете в виду под "включить".

Если сторонний файл jar определен как зависимость в вашем военном проекте, он автоматически будет добавлен в папку войны WEB-INF / lib, когда он упакован военный плагин . В этом случае любой класс в jar будет находиться на пути к классам и, следовательно, будет доступен для ссылки в вашей конфигурации Spring. У вас есть более конкретные требования, чем это?

Также обратите внимание, что если сторонний jar - это правильно определенный проект Maven, его зависимости будут определены в его pom. Эти переходные зависимости также включены в войну (если только вы не определили их с нестандартным scope , в этом случае они могут не быть).

Любой из jar-файлов, которые вы найдете в центральном репозитории Maven , должен быть определен со всеми их переходными зависимостями. Если у вас возникли проблемы с их разрешением, обновите свой ответ, чтобы можно было найти соответствующие учетные данные Maven.

Обновление на основе вашего комментария. Когда jar находится на пути к классам войны, вы можете ссылаться на любые объявленные им конфигурационные файлы Spring, импортируя их в контекст приложения вашей войны. Вы просто указываете импорт в виде: " jar: file: // jarName! /Path/to/config.xml"

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top