该项目使用Quarkus,Hibernate Search和Elasticsearch展示具有全文搜索功能的Web应用程序。
在此处查看演示视频。
如果您想了解有关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服务。
如果要以生产模式运行该应用程序,则需要在Localhost上提供PostgreSQL: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您可以以DEV模式运行应用程序,该应用程序可以使用以下方式使用实时编码:
./mvnw compile quarkus:dev注意: Quarkus现在使用Dev UI发货,该运输仅在DEV模式下可用,仅在http:// localhost:8080/q/dev/。
可以使用以下方式打包应用程序:
./mvnw package它在target/quarkus-app/ Directory中生成quarkus-run.jar文件。请注意,这不是über-jar,因为依赖项被复制到target/quarkus-app/lib/目录中。
现在可以使用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 target/quarkus-hibernate-search-starter-demo-1.0.0.0.0-snapshot-runner执行本机可执行文件
如果您想了解有关构建本机可执行文件的更多信息,请咨询https://quarkus.io/guides/maven-tooling。