window的war发布Linux失败,Windows下war包部署到Linux下Tomcat出现的问题

最近,将Windows下开发的war包部署到Linux下的Tomcat时报了一个错误:tomcat error in opening zip file。按理说,如果正常,当把war包复制到webapps目录下时,会自动解压缩到与包名同名的文件夹下,但是事实并没有解压缩。所以到logs文件夹下看,报了上面的错误。

百度一下,可能是java版本与Tomcat版本和Linux下的不一致,一看,果然不一致,但其实版本都很接近,而且,询问之前的开发人员,他们的war包是可以自动解压缩的,也就是说不是版本的问题。还有就是通过ftp上传文件时没有使用二进制的传送方式,这个也不是原因,因为我用的就是binary模式。那到底是什么原因?然后我又仔细看了一下报错的信息,发现有一个是unreadable!为什么会是没有办法读呢?我潜意识相当可能是文件的权限问题。

果断ls -lt,看一下所有文件的权限,

20180111003837341259.png

第一列:drwxr-xr-x代表文件的类型及权限

以d开头的为文件夹,以-开头的为文件,

以l开头的为连接文件

再细分,d后面其实是3个组合,每一个组合有rwx构成,分别表示文件拥有者的权限,组的权限和其他用户的权限

第2列:文件的链接数.

第3、4列:分别代表拥有文件的用户和组

第5列:文件的大小。

第6列:文件最后的修改时间。

第7列:文件名

原先ICardSys.war是-rw-r-----,也就是除了root用户和system组之外,其他用户都无法读。所以,我想着应该给其他用户加一个读的权限,这样也行可以解决unreadable的问题。文件权限修改,需要用到chmod,r代表4,w代表2,x代表1,比如rwx就用7来表示,所以我们chmod 644 ICardSys.war一下试一试。此时,发现可以自动解压war包了,而且也多了新生成的文件夹。

到此该问题解决,但其实不难发现,同一种错误的原因可能是多种多样的,网上的也无法能解决你的问题,还是要自己去思考。

参考文献:

http://www.cnblogs.com/wangyuyu/p/3900098.html

http://jingyan.baidu.com/article/8cdccae963e442315413cd01.html

原文:http://www.cnblogs.com/fxl-njfu/p/7511764.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值