我刚刚开始学习Java EE,并在尝试在tomcat服务器上部署WAR文件时遇到此错误。
每次使用管理器应用程序部署WAR时都会发生此错误。当我选择位于 C:\ Users \ julex_000 \ workspace \ application \ target \ application-0.0.1-SNAPSHOT 的文件时,Tomcat将其名称设置为 /C:Usersjulex_000workspaceapplicationtargetapplication-0.0。 1-SNAPSHOT 。然后它在Tomcat8.0 \ webapps文件夹中创建一个名为 C 的文件,当我尝试启动应用程序时,它每次都会失败。 无效的':'似乎是路径 C:\ Users \ ... 中C之后的冒号 我也得到了关于此的IOException:
仅在使用管理器应用程序时才会出现此错误。当我将WAR复制并粘贴到webapps目录中时,它可以正常工作。
答案 0 :(得分:1)
根本不允许在上下文路径中有:
。
在部署时,您必须传递有效的上下文路径。
例如,如果您使用的是tomcat管理器ui: 您必须设置字段上下文路径和 WAR或目录URL (tomcat可以找到war文件的应用程序服务器上的lokal路径;如果tomcat未打开你的localhost必须手动移动war文件并使用服务器上的路径。
如果您在ui中使用带有upload字段的表单,则没有输入字段可以传递上下文路径,但tomcat将使用war(而不是完整路径)的文件名作为上下文路径。 / p>
最后但并非最不重要的是,如果你使用非ui-api,你可以发送带有http put请求的war文件并传递url参数path
。您可以在Documentation。