当前位置: 首页 > 知识库问答 >
问题:

无法将Eclipse创建的WAR文件正确部署到Tomcat

阎宾实
2023-03-14

我会告诉你我所做的所有步骤。我还会给出一些图片,使我的问题更容易理解。任何推荐都会很好。

有必要说我用

Tomcat 6(安装在C:\Program Files\Apache Software Foundation\Tomcat 6.0)

INFO: Starting Servlet Engine: Apache Tomcat/6.0.36
12 бер 2013 17:01:38 org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory docs
12 бер 2013 17:01:38 org.apache.jasper.EmbeddedServletOptions <init>
SEVERE: The scratchDir you specified: C:\Program Files\Apache Software Foundation\Tomcat 6.0\work\Catalina\localhost\docs is unusable.
12 бер 2013 17:01:38 org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory helloserver
12 бер 2013 17:01:38 org.apache.jasper.EmbeddedServletOptions <init>
SEVERE: The scratchDir you specified: C:\Program Files\Apache Software Foundation\Tomcat 6.0\work\Catalina\localhost\helloserver is unusable.
12 бер 2013 17:01:38 org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory manager
12 бер 2013 17:01:38 org.apache.catalina.startup.HostConfig deployDirectory
SEVERE: Error deploying web application directory manager
java.io.FileNotFoundException: C:\Program Files\Apache Software Foundation\Tomcat 6.0\conf\Catalina\localhost\manager.xml (The system cannot find the path specified)
    at java.io.FileOutputStream.open(Native Method)
    at java.io.FileOutputStream.<init>(FileOutputStream.java:194)
    at java.io.FileOutputStream.<init>(FileOutputStream.java:145)
    at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1051)
    at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:1002)
    at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:506)
    at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1317)
    at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:324)
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1065)
    at org.apache.catalina.core.StandardHost.start(StandardHost.java:840)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1057)
    at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)
    at org.apache.catalina.core.StandardService.start(StandardService.java:525)
    at org.apache.catalina.core.StandardServer.start(StandardServer.java:754)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:595)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
12 бер 2013 17:01:38 org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory ROOT
12 бер 2013 17:01:38 org.apache.jasper.EmbeddedServletOptions <init>
SEVERE: The scratchDir you specified: C:\Program Files\Apache Software Foundation\Tomcat 6.0\work\Catalina\localhost\_ is unusable.
12 бер 2013 17:01:38 org.apache.coyote.http11.Http11Protocol start
INFO: Starting Coyote HTTP/1.1 on http-8080
12 бер 2013 17:01:38 org.apache.jk.common.ChannelSocket init
INFO: JK: ajp13 listening on /0.0.0.0:8009
12 бер 2013 17:01:38 org.apache.jk.server.JkMain start
INFO: Jk running ID=0 time=0/28  config=null
12 бер 2013 17:01:38 org.apache.catalina.startup.Catalina start
INFO: Server startup in 722 ms

1)创建一个新的Web应用程序项目(GWT)。它在Jetty上运行良好

3)第一个问题(我认为也是最主要的问题):WAR文件没有转到C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps。而是转到C:\users\username\appdata\local\virtualstore\program Files\Apache Software Foundation\tomcat 6.0\webapps\apache Software Foundation\tomcat 6.0\webapps\。此外,我试图创建一个动态web项目并尝试在服务器上运行它(r-click->运行为->在服务器上运行)。而且它部署在同一个目录下(我的意思是C:\users\username\appdata\local\virtualstore\program Files\Apache Software Foundation\tomcat

4)然后我尝试在桌面上导出WAR文件(我又是指GWT项目),结果很好,然后我手动将WAR文件放入C:\ProgramFiles\Apache Software Foundation\Tomcat6.0\webapps(Tomcat仍在工作)。

5)另一个问题是Tomcat没有解包WAR文件。我尝试将其加载到web浏览器(http://localhost:8080/helloserver)中没有任何结果。然后我手动解包WAR文件,并将helloserver目录放到webapps中,结果成功了!一切正常。

共有1个答案

谷梁玺
2023-03-14

日志文件中的初始错误倾向于表明您没有安装tomcatManager应用程序(或者它已经安装,但只是配置/禁用错误)。

尝试通过浏览验证管理器应用程序是否正常工作

http://youmachine.domain:8080/manager/html

 类似资料:
  • 我按照下一页上的说明将primefaces jar库转换为OSGi插件,并将其添加为OSGi捆绑包中必需的插件之一。http://www.vogella.com/tutorials/EclipseJarToPlugin/article.html#jar-files-without-osgi-meta-data 然而,当我部署OSGi捆绑包,我<有限公司 这是我得到的堆栈跟踪,以防错误是由于其他原因

  • 我在使用WAR文件将web应用程序从Eclipse部署到Linux上的Tomcat服务器时遇到了问题。我使用的是Tomcat 7.0.53。在本地部署时,我可以创建指定的文件夹路径,这些路径放入文件夹共享中,并将文件放置在这些位置。当试图通过Tomcat服务器上部署的WAR执行这些过程时,不会创建该文件夹共享中的目录,也不会放置文件。通过日志记录,我知道这些文件夹目标和文件是创建的。这背后有什么可

  • 问题内容: 我在装有Tomcat 8的同一服务器上运行Jenkins 1.6(并且也尝试使用Jenkins 2.0)。我需要将Maven多模块应用程序部署到Tomcat Web应用程序。它有两个必须部署的子模块中的war文件。Deploy插件最多支持Tomcat 7,并且工作正常。但是,问题是我需要使用Tomcat 8,因为我的Web应用程序无法在Tomcat 7上运行。是否可以将War文件从Je

  • 问题内容: 在Docker容器中部署Java项目的Docker方法是什么? 我是否会将战争复制到webapps中: 还是我拿爆炸的战争文件: 通常,如果它是一个普通的容器,则将部署密封的war文件,但是对于docker,这意味着每次您进行较小的更改时都会推送10-20MB的文件,而添加展开的war只会推动差异-.class文件已经改变。 部署爆炸式战争而不是战争档案有不利之处吗? 问题答案: 我想

  • 在docker容器中部署java项目的docker方法是什么? 我是否将战争复制到网络应用程序中: 还是我拿爆炸的战争文件: 通常情况下,如果密封的war文件是一个普通的容器,人们会部署它,但对于docker,这意味着每次做一个小更改时都会推送一个10-20MB的文件,而添加爆炸的war只会推送差异,即。已更改的类文件。 部署爆炸战争而不是战争文件有什么缺点吗?

  • 在将文件部署到Wildfly时,应将文件复制到何处? 我看不到文件在哪里: 似乎要进行爆炸式部署: 在运行期间,启用的war文件由tmp目录中的vfs分解。这些文件将在停止/重新启动/禁用时删除。 参考内容位于内容数据目录中,用于重新创建tmp文件。