Мне нужно использовать Jetty и Vaadin и построить толстую банку.
Моя рабочая область основана на Gradle 5, это многоцелевой проект gradle
Parent
Common-Lib
Core-Lib
Jetty+Vaadin
Я следовал документации, которую нашел здесь:
https://vaadin.com/tutorials/embedded-jetty-server-in-vaadin-flow
В документации объясняется, как создать WebAppContext для Jetty и запустить экземпляр Jetty Server, основанный на maven.
Ожидайте, как я уже сказал, мое рабочее пространство основано на gradle, поэтому вместо копирования pom.xml япереписал его в скрипт сборки gradle, который выглядит следующим образом:
plugins {
id 'idea'
}
group = 'some.example.jetty.and.vaadin.fatjar'
version = '1.0.0'
dependencies {
implementation project(':Core-Lib')
implementation project(':Common-Lib')
compile group: 'javax.servlet', name: 'javax.servlet-api', version: '4.0.1'
compile group: 'org.eclipse.jetty', name: 'jetty-continuation', version: '9.4.14.v20181114'
compile group: 'org.eclipse.jetty.websocket', name: 'websocket-server', version: '9.4.14.v20181114'
compile group: 'org.eclipse.jetty.websocket', name: 'javax-websocket-server-impl', version: '9.4.14.v20181114'
compile group: 'com.vaadin', name: 'vaadin-core', version: '12.0.7'
}
Моя проблема в том, что во время сборки gradle выводит файл .war.Я не могу использовать файл .war.
Предполагается, что этот проект будет подключаемым модулем для другого приложения, для которого у меня нет источников.Приложение просто загружает файлы jar из определенной папки, поддерживается только расширение jar.
У меня такой вопрос: как я могу создать стандартный "unhaded" uber jar / fat jar вместо .war
Со словом «без тени» я хочу распаковать все зависимости JAR и упаковать их в окончательный JAR.