我有一个带有 Spring Boot 和 Jersey 的 REST API,打包为 jar
。当我运行我的应用程序(使用 IntelliJ)时,我可以导航到:
http://localhost:8080/clients
我得到了所有的客户。现在,我对 pom.xml
进行了一些更改,以便将其打包为 war
,因为我需要将其部署在外部 Tomcat 中。
当我打包 war
(名为 apirest.war
)并将其部署在该 Tomcat 中时,我导航到:
http://api.mycompany.com/apirest/clients
但我收到 HTTP 404 错误
。发生了什么事?
最佳答案
作为 jar 包装真的不是一种选择吗?
我相信 Spring Boot 更适合与嵌入式 Tomcat 一起使用,并将您的应用程序打包为 jar。
然后您可以轻松地通过您的操作系统服务/守护程序管理工具(例如 Linux 上的 systemd
,甚至在 screen
... 中运行它)
作为额外的好处,通过使用 jar 打包,您可以从应用程序中删除对系统 Tomcat 的依赖。您基本上只需要一个操作系统和一个 JVM 即可。
关于tomcat - Spring Boot 中上下文路径的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36568526/