1

将我的项目部署到 SpringSource dm 服务器时,每隔一段时间,JAR 部署失败并显示以下消息:

/mnt/myproject/springsource/work/com.springsource.server.deployer/packed/my.project.0.1.10.M.jar' cannot be unpacked.

java.util.zip.ZipException: error in opening zip file

项目中有 5 个 .war 文件。如果其中一个失败,它始终是同一个(这也是要复制到拾取目录中的最后一个)。但是,通常所有 5 个都将部署没有问题。它是所有实例中完全相同的文件集,取自 maven 存储库,刚刚部署到新的服务器实例。

失败的文件可以通过 7-Zip 很好地打开。如果我停止Spring,清除pickup目录,启动Spring并再次将.war文件复制到pickup,它通常会工作。

通常的部署过程是:

  • 开始春天
  • 等到它报告 Open for business with profile 'web'
  • 复制所有 5 个项目,每个副本之间有 2 秒的延迟(脚本)。

类似的问题java-util-zip-zipexception-error-in-opening-zip-filejboss5-cannot-deploy-due-to-java-util-zip-zipexception-error-in-opening-zip-fil似乎没有申请。

4

1 回答 1

1

你没有说你正在运行哪个版本的 dm 服务器,所以如果你还没有,我建议升级到 2.0.x 以获取修复。您可能还想升级到 Eclipse Virgo,它是 dm Server 项目的延续。

我的猜测是,dm 服务器中用于确定文件复制到拾取何时终止的启发式方法正在发挥作用,可能是由于复制操作缓慢或不稳定。您的磁盘是否有任何异常,例如加密或远程挂载,可能会干扰复制操作?

One way to rule out the heuristic would be to place the files in the pickup directory when dm Server is not running and then start dm Server when the copy operation has definitely completed. If the problem reproduces, then there may be a problem in the JRE you are using.

于 2010-12-10T09:43:52.680 回答