您的位置:首页 > 运维架构 > Tomcat

Windows下war包部署到Linux下Tomcat出现的问题

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

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

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



第一列: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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐