2016-02-23 5 views
3

Я создал приложение для загрузки весны, имеющее веб-службы REST и зависимости jpa. Приложение запускается самостоятельно как отдельное приложение. Я пытаюсь добавить слой пользовательского интерфейса, используя vaadin в качестве отдельного проекта, который использует службы из проекта загрузки sring. Есть ли простой способ сделать приложение загрузки весны в виде библиотеки, которая может быть включена в другие проекты.Создание библиотеки с использованием Spring boot

Я искал форум и нашел несколько тем, которые посоветовали не использовать весеннюю загрузку, а вместо этого использовать фреймворк для создания библиотеки. Просто хотел проверить, есть ли какие-то примеры, как это можно сделать в Spring boot.

+0

Это зависит от того, как вы планируете упаковывать и развертывать их, а также использовать библиотеку из пользовательского интерфейса Vaadin, простые старые вызовы методов Java или вызовы REST. Я предполагаю, что они предлагают использовать только Spring, потому что при использовании Boot полученный артефакт будет включать все его зависимости. В любом случае, я думаю, что самым простым способом было бы использовать maven, gradle или любую другую такую ​​систему сборки, которая позволяет вам упаковывать ваш артефакт несколькими способами и поддерживать распределенные и управляемые версиями зависимости. Например: проект maven с 2 модулями, 1 для библиотеки и 1 для пользовательского интерфейса, который ссылается на библиотеку. – Morfic

ответ

0

Как сказал Морфик, вам нужно решить, собираетесь ли вы называть методы библиотеки изначально с помощью Java или настраиваете ли вы веб-службу. Похоже, вы строите REST API, и в этом случае я бы не стал его включать в качестве библиотеки. Я просто запускаю ваше приложение загрузки весны (java -jar myservice.jar или mvn spring: boot run), а затем просто подключаюсь к нему с помощью HTTP REST на любом порту Spring Boot для вашего сервиса.

Если вы решили загрузить приложение Spring Boot в качестве библиотеки jar, вам, вероятно, вообще не нужна загрузка Spring. Все, что вам нужно, это ваши методы обслуживания и конфигурация Spring, упакованные вместе как jar, mvn install to your local repo, а затем просто ссылайтесь на свою банку в pom-файле проекта vaadin (все это предполагает, что вы создаете его как проект maven).

0

Если ваше намерение было позволить Vaadin называть REST API, который вы создали из браузера (как это обычно бывает с клиентской стороны структур, как AngularJS), то вы недоразумение Vaadin. Приложение Vaadin работает на стороне сервера.

Итак, что вы можете выполнить. Запустите два сервера, один из которых запускает приложение Vaadin и вызывает второй, запускающий ваш REST API. Но если нет необходимости в этом расколе, вы можете использовать классы, которые образуют REST API, как обычный Java API, называемый непосредственно из кода приложения Vaadin.

1

This project может заинтересовать вас. Я использовал Spring-Boot, чтобы сделать библиотеку для использования в других проектах.

Главное внимание здесь иметь:

@SpringBootApplication(scanBasePackages = {"me.ramswaroop.jbot", "example.jbot"}) 

в главном классе, где вы запускаете приложение пружинной загрузки. См. Это main class, чтобы узнать больше. Но, честно говоря, использование Spring-Boot для включения библиотеки в другие проекты не является хорошим выбором по мне. Если бы я переписал JBot, то я бы не стал использовать Spring-Boot точно.

Spring-Boot действительно хорош, чтобы создать автономное приложение, которое вы можете «просто работать», но создать библиотеку, гм, не мой любимый выбор.

Смежные вопросы