我创建了一个grails应用程序,它在IDEA中运行正常,然后我将其打包为gradle所示的名为api.war
的war文件。在jetty(版本为9.3.7)之后部署它,我在chrome中访问它。Something wrong like this。如果我直接在浏览器中输入网址“http://localhost:8080/api/json/xxx.json”,我可以访问数据时,应用无法访问数据。
然后我将其重命名为root.war
,以便我可以通过根路径访问它。该应用程序正常工作!它可以完美地访问数据。
如果我有两个应用程序,它们都像api.war
。如你所见,根路径不能是一半,我该怎么办?顺便说一句,我在部署之后找不到webapps中的任何文件夹。这是tomcat和jetty之间的区别吗?
答案 0 :(得分:0)
您无需复制战争文件。看看下面的步骤,这些可以帮助你:
/opt/war
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN"
"http://www.eclipse.org/jetty/configure_9_0.dtd">
<Configure id="app1" class="org.eclipse.jetty.webapp.WebAppContext">
<Set name="war">/opt/war/app.war</Set>
<Set name="contextPath">/app1</Set>
</Configure>
对于每个应用程序,您需要定义id和contextPath
。
我希望答案可以帮助你