首页 > 解决方案 > 如何运行在 Jhipster 应用程序中使用 gradlew bootWar 命令创建的可执行战争

问题描述

通过 jhipster 使用我的应用程序

https://github.com/trustjalaj/DockerDemo及java 8环境

我使用 ./gradlew bootWar 命令为 prod 配置文件创建了一个战争文件,然后我使用以下命令在我的 Linux(Ubuntu)笔记本电脑中执行它

我做过的事情

假设我在 Application Home 文件夹中,即 /media/jalaj/OS/DockerDemo

我用了

1) build/libs/checking-docker-0.0.1-SNAPSHOT.war

2) java -jar build/libs/checking-docker-0.0.1-SNAPSHOT.war

我没有看到为后者加载任何 UI 组件,但它显示应用程序已在 localhost:8080 上启动

并且前一个命令显示错误

build/libs/checking-docker-0.0.1-SNAPSHOT.war: line 1: $'PK\003\004': command not found
build/libs/checking-docker-0.0.1-SNAPSHOT.war: line 2:5F,Morg/PK: No such file or directory
build/libs/checking-docker-0.0.1-SNAPSHOT.war: line 3:5F,Morg/springframework/PK: No such file or directory
build/libs/checking-docker-0.0.1-SNAPSHOT.war: line 4:5F,Morg/springframework/boot/PK: No such file or directory
build/libs/checking-docker-0.0.1-SNAPSHOT.war: line 5: $'\b5F,M': command not found
build/libs/checking-docker-0.0.1-SNAPSHOT.war: line 6:5F,M%org/springframework/boot/loader/data/PK: No such file or directory
build/libs/checking-docker-0.0.1-SNAPSHOT.war: line 7:5F,M/springframework/boot/loader/jar/PK: No such file or directory
build/libs/checking-docker-0.0.1-SNAPSHOT.war: line 8: syntax error near unexpected token `$'org/springframework/boot/loader/archive/PK\003\004''
build/libs/checking-docker-0.0.1-SNAPSHOT.war: line 8: 5F,M(org/springframework/boot/loader/archive/PK'

3)我也关注了文档https://www.jhipster.tech/production/

用于执行,它说类似 .original.war 的东西也将在 build/libs 文件夹中创建,但我看不到同一目录中存在的原始战争

我还阅读了其他 SO 答案,我发现它需要部署在 tomcat 服务器上,因为 nginx 不是 servlet 容器。

任何有经验的人都可以指导如何执行war文件。

标签: jhipster

解决方案


对于@GaëlMarziou ./gradlew 建议的开发配置文件工作正常,对于我的项目自述文件中提到的产品配置文件工作正常

./gradlew -Pprod 干净启动战争

java -jar build/libs/*.war


推荐阅读