Java 将webapp从Eclipse部署到Tomcat根上下文
我从Eclipse部署了一个.war应用程序,方法是添加动态Web模块方面,然后右键单击项目并选择RunAs->RunonServer 这很好,但是默认情况下,项目被部署到Tomcat的/web上下文中,因为项目名称是web。有没有一种方法可以在不将项目名称更改为ROOT的情况下从Eclipse部署到Tomcat?右键单击应用程序>属性>Web项目设置,并将上下文根设置为ROOT或空-我还没有尝试过,所以请同时尝试这两种方法,并让我知道哪种方法有效。您需要转到服务器视图。。双击tomcat,将打开一个包含两个选项卡的新窗口。选择显示模块的模块,您的应用程序将与上下文路径一起列出。您可以从此处将上下文路径从/web更改为任何其他内容Java 将webapp从Eclipse部署到Tomcat根上下文,java,eclipse,tomcat,Java,Eclipse,Tomcat,我从Eclipse部署了一个.war应用程序,方法是添加动态Web模块方面,然后右键单击项目并选择RunAs->RunonServer 这很好,但是默认情况下,项目被部署到Tomcat的/web上下文中,因为项目名称是web。有没有一种方法可以在不将项目名称更改为ROOT的情况下从Eclipse部署到Tomcat?右键单击应用程序>属性>Web项目设置,并将上下文根设置为ROOT或空-我还没有尝试过,所以请同时尝试这两种方法,并让我知道哪种方法有效。您需要转到服务器视图。。双击tomcat,将打
或者,您可以打开server.xml查找名为context的标记。在这个标记中,您可以找到contextroot作为/web。。更改它。在Eclipse中右键单击您的项目,然后选择属性->Web项目设置。在那里更改上下文名称 或者,您可以在项目内的.settings/org.eclipse.wst.common.component文件中编辑它在项目的Web项目设置中,将上下文根设置为/。无报价 以防万一,您正在使用带有mod_代理的apache2。在虚拟主机定义中,我有根上下文的位置条目:
<Proxy balancer://ajpCluster>
BalancerMember ajp://localhost:18009 route=s1
BalancerMember ajp://localhost:28009 route=s2
</Proxy>
# A "Location" entry for hosting static content. Would put mod_expire settings
# here
<Location /resources>
ProxyPass ! #Don't proxy this location
ExpiresActive on
ExpiresDefault "access plus 1 seconds"
ExpiresByType application/javascript "access plus 1 months"
</Location>
#...
# This must be the last "Location" if you are overloading others, otherwise
# the others won't load as apache uses the first one listed that matches
<Location />
ProxyPass balancer://ajpCluster stickysession=JSESSIONID
</Location>
在eclipse中配置服务器之后,您可以进一步配置它,并添加/删除/调整希望它承载的任何模块,如contexts/webapps。您应该有一个服务器窗口,列出服务器(如果没有):窗口>显示视图>服务器。双击服务器打开配置页面。有两个选项卡,但它们位于左下角。打开模块,将列出您添加的任何模块。如果您希望一个模块是默认模块,那么如果您键入localhost,它将显示server index.jsp,例如,确保路径显示/。默认值将是webapps属性>Web项目设置中的值,通常是项目名称。如果您将其设置在那里,它不会让您将其留空,因此请使用/ 确保保存服务器的配置更改。您可能还需要发布它,以使更改传播到实际的服务器
最后要检查的是找到服务器安装,打开conf/server.xml并查找您的上下文。您也可以在那里更改路径。请注意,path=等于/,tomcat将使其成为根应用程序。还请注意,当您第一次发布Eclipse时,它将创建一个名为ROOT的空webapp,这也将在server.xml中。删除它是安全的。即使您部署的应用程序将项目名称作为webapp名称,只要路径为,它也会将其视为默认根目录。此项有效仅当项目定义为webproject时有效,如果不是web项目,我认为您将无法通过Eclipse的服务器设施部署到Tomcat。注意,要作为站点根运行,请将上下文更改为/。然后,我不得不在Servers视图中右键单击服务器并调用Clean。请删除介绍并使您的答案更简洁和相关。另一种方法是打开Eclipse->Project Explorer->Servers->server.xml: