Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/385.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java War文件无法正常工作_Java_Maven_Tomcat_Web Applications_War - Fatal编程技术网

Java War文件无法正常工作

Java War文件无法正常工作,java,maven,tomcat,web-applications,war,Java,Maven,Tomcat,Web Applications,War,我使用Maven创建了一个java web应用程序。应用程序使用了一些资源(图像)。我使用Maven->cleanpackage运行它,以创建一个war文件。我使用Tomcat部署它。war文件在我的机器和另外两台chrome和InternetExplorer机器上完美地工作。今天,我们在第四台机器上尝试了它,它提出了一个问题,即一些资源没有包括在内。我们所有人都使用tomcat7,不同的是,war文件在其机器上不工作的人使用稍低版本的tomcat7。但他坚持认为,问题出在应用程序上,而不是服务

我使用
Maven
创建了一个java web应用程序。应用程序使用了一些资源(图像)。我使用
Maven->cleanpackage
运行它,以创建一个
war文件
。我使用
Tomcat
部署它。war文件在我的机器和另外两台chrome和InternetExplorer机器上完美地工作。今天,我们在第四台机器上尝试了它,它提出了一个问题,即一些资源没有包括在内。我们所有人都使用
tomcat7
,不同的是,war文件在其机器上不工作的人使用稍低版本的
tomcat7
。但他坚持认为,问题出在应用程序上,而不是服务器上。这种不一致的可能和合理原因是什么?你认为问题的根源在哪里

正如您所猜测的,“war”文件只是一个包(实际上是一个zip文件)。您可以解压它并检查里面的内容,以确保资源在那里

此外,当您将其部署到tomcat中时,tomcat将自己将其解压到其webapps目录(或它指向的任何地方)

确保所有文件都在包中,并且在部署完所有文件后,解包,然后可以检查命名。一定有区别,我怀疑tomcat版本是否正确,但如果必须,您可以升级tomcat并重试。 它也可能是一些缓存,可能您在tomcat服务器上工作了一段时间,并且您有以前部署的资源,但您没有正确清理。停止tomcat,删除应用程序目录,复制war文件并再次启动tomcat,以便在所有服务器中进行干净的部署。(tomcat中的热部署可能非常棘手)


考虑到缺乏细节,我不认为我能给出一个解决问题的答案,但我希望我能在某种程度上提供帮助。

事实上,问题在于应用程序,而不是服务器。您可能需要升级一些类依赖项。stacktrace中的任何错误都可以进一步解释机器使用的是什么操作系统?它可能是由区分大小写或文件夹分隔符“/“vs”\”等引起的@GV:为什么它会在三台机器上正确运行?您是指pom.xml中的“类依赖项”依赖项吗?stacktrace中没有错误。此外,我们都使用Windows8。正如你提到的,它在更低版本的tomcat上不起作用。我所说的类依赖性是指tomcat中使用的JAR可能会有一些变化。但是当有“知道”错误时,你怎么知道它不工作?@GV:我在我的问题中写道:它不包含所有的资源(图像)。有些人失踪了。