Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/6.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 部署战争包TOMCAT_Java_Maven_Tomcat_War - Fatal编程技术网

Java 部署战争包TOMCAT

Java 部署战争包TOMCAT,java,maven,tomcat,war,Java,Maven,Tomcat,War,我有两个相同的WAR文件:一个没有Maven打包,另一个使用Maven打包。当我尝试使用Tomcat部署Maven打包的WAR时,我得到一个HTTP状态404错误(请求的资源不可用),原始WAR(打包而不使用Maven)运行顺利。我确信使用Maven打包的WAR具有所有必需的文件,因为它与原始包完全相同。关于如何解决这个问题,你有什么想法吗?在这种情况下,我只信任那些能够可视化捆绑包是否完全相同的工具。我将在下面向您展示一些工具(MS Windows工具) 校验和工具: 这个工具会很快给我

我有两个相同的WAR文件:一个没有Maven打包,另一个使用Maven打包。当我尝试使用Tomcat部署Maven打包的WAR时,我得到一个HTTP状态404错误(请求的资源不可用),原始WAR(打包而不使用Maven)运行顺利。我确信使用Maven打包的WAR具有所有必需的文件,因为它与原始包完全相同。关于如何解决这个问题,你有什么想法吗?

在这种情况下,我只信任那些能够可视化捆绑包是否完全相同的工具。我将在下面向您展示一些工具(MS Windows工具)

校验和工具:

这个工具会很快给我一个完整包的校验和。我可以把这个和另一个文件进行比较

差异工具:

如果校验和不相同,则需要查看捆绑包中的差异。 在这种情况下,我会使用一些diff工具,比如kDiff

web.xml-部署描述器

有些文件非常重要,需要先检查,比如web-INF文件夹中的部署描述符web.xml。验证其内容、安全设置、servlet的配置等,以及web服务的“条目”

解压缩并检查文件夹/文件

您知道您的war文件是一个普通的“zip”包。只需解压缩并检查内容。您可以将其作为解压war部署到tomcat(即,整个文件夹,文件夹名称将是您的上下文根)

验证tomcat日志


在部署和访问web解决方案时检查输出。查看并提高级别并查看日志。

在这种情况下,我只信任能够可视化捆绑包是否完全相同的工具。我将在下面向您展示一些工具(MS Windows工具)

校验和工具:

这个工具会很快给我一个完整包的校验和。我可以把这个和另一个文件进行比较

差异工具:

如果校验和不相同,则需要查看捆绑包中的差异。 在这种情况下,我会使用一些diff工具,比如kDiff

web.xml-部署描述器

有些文件非常重要,需要先检查,比如web-INF文件夹中的部署描述符web.xml。验证其内容、安全设置、servlet的配置等,以及web服务的“条目”

解压缩并检查文件夹/文件

您知道您的war文件是一个普通的“zip”包。只需解压缩并检查内容。您可以将其作为解压war部署到tomcat(即,整个文件夹,文件夹名称将是您的上下文根)

验证tomcat日志


在部署和访问web解决方案时检查输出。查看并提高级别并查看日志。

war文件的名称是什么?如果它们不同,tomcat会将它们部署在不同的上下文路径上

Maven通常将版本放在末尾,例如:

myproject.war将部署到localhost:8080/myproject

而myproject-1.0.0.war将部署到localhost:8080/myproject-1.0.0/(不确定它是否处理dots)

您可以尝试将war文件重命名为同一路径,或将“/”的ROOT.war重命名为


你查过catalina.out日志了吗?

war文件的名称是什么?如果它们不同,tomcat会将它们部署在不同的上下文路径上

Maven通常将版本放在末尾,例如:

myproject.war将部署到localhost:8080/myproject

而myproject-1.0.0.war将部署到localhost:8080/myproject-1.0.0/(不确定它是否处理dots)

您可以尝试将war文件重命名为同一路径,或将“/”的ROOT.war重命名为


你检查过catalina.out日志了吗?

比较两个文件的内容,看看是否有遗漏。不管你有多确定:如果一个运行,另一个不运行,它们就不一样了。WAR文件是zip文件。您只需解压缩它们并比较内容。对两个war文件进行校验和/哈希(md5或其他)并比较它们。检查两个war文件中的web.xml(在web inf下)。使用校验和的好工具很高兴看到您的maven war配置,请共享它。请比较两个文件的内容以查看是否缺少某些内容。无论您多么确定:如果一个文件运行,另一个文件不运行,则它们不相同。WAR文件是zip文件。您只需解压缩它们并比较内容。对两个war文件进行校验和/哈希(md5或其他)并比较它们。检查两个war文件中的web.xml(在web inf下)。好的校验和使用工具会很高兴看到您的maven war配置,请分享它