В этом проекте используются Quarkus, Hibernate Search и Elasticsearch, чтобы продемонстрировать веб-приложение с полнотекстовыми функциями поиска.
Смотрите демонстрационное видео здесь.
Если вы хотите узнать больше о Quarkus, пожалуйста, посетите его веб -сайт: https://quarkus.io/.
Приложению нужно Elasticsearch, чтобы быть доступным на Localhost: 9200. С Docker вы можете начать Elasticsearch таким образом:
docker run --rm -ti --ulimit memlock=-1:-1 --memory-swappiness=0
--name acme_elasticsearch -e xpack.security.enabled=false -e discovery.type=single-node
-e " ES_JAVA_OPTS=-Xms1g -Xmx1g " -p 9200:9200 elastic/elasticsearch:7.16.3В режиме разработки Quarkus автоматически запустит экземпляр PostgreSQL благодаря Dev Services.
Если вы хотите запустить приложение в производственном режиме, вам нужно будет сделать PostgreSQL доступным на LocalHost: 5432. С Docker вы можете начать PostgreSQL таким образом:
docker run -ti --rm --ulimit memlock=-1:-1 --memory-swappiness=0
--name acme_postgresql -e POSTGRES_USER=acme -e POSTGRES_PASSWORD=acme
-e POSTGRES_DB=acme_db -p 5432:5432 postgres:13.1Вы можете запустить свое приложение в режиме разработчика, который позволяет живым кодированию, используя:
./mvnw compile quarkus:devПримечание. Теперь Quarkus отправляется с помощью Dev UI, который доступен в режиме DEV только по адресу http: // localhost: 8080/Q/dev/.
Приложение можно упаковать с помощью:
./mvnw package Он производит файл quarkus-run.jar в каталоге target/quarkus-app/ . Имейте в виду, что это не über-jar, поскольку зависимости копируются в target/quarkus-app/lib/ Directory.
Приложение теперь используется с использованием java -jar target/quarkus-app/quarkus-run.jar .
Если вы хотите построить über-jar , выполните следующую команду:
./mvnw package -Dquarkus.package.type=uber-jar Приложение, упакованное как über-jar , теперь работает с использованием java -jar target/*-runner.jar .
Вы можете создать собственного исполняемого файла, используя:
./mvnw package -PnativeИли, если у вас нет graAlvm, вы можете запустить собственную исполнительную сборку в контейнере, используя:
./mvnw package -Pnative -Dquarkus.native.container-build=true Затем вы можете выполнить свой собственный исполняемый файл с помощью: ./target/quarkus-hibernate-search-starter-demo-1.0.0-SNAPSHOT-runner
Если вы хотите узнать больше о создании местных исполняемых файлов, пожалуйста, обратитесь к https://quarkus.io/guides/maven-tooling.