我已经解决了这个问题,但它可以帮助那些遇到这个问题的人。过去,Stackoverflow在看似模糊和神秘的IT问题上为我节省了无数个小时。
以下是在Windows上将WAR文件部署到Tomcat时出现的错误。 WAR文件是使用JRuby& amp ;;在Mac上构建的。莺。
SEVERE: Exception fixing docBase for context [/XYZ] java.io.IOException:
The filename, directory name, or volume label syntax is incorrect
根据其他人的说法,WAR文件已损坏,不应通过任何Zip工具打开。此情况并非如此。
相反,经过数小时的调查后发现,我在Warbler路径中有一个文件名为管道“|”的文件字符。此文件名未故意分配虽然这在Mac上很好,Windows不喜欢它。
解决方案:删除带有“|”的文件在文件名中,WAR文件成功部署!
答案 0 :(得分:2)
如上所述:
解决方案:使用“|”删除文件在文件名中,WAR文件成功部署!
答案 1 :(得分:1)
我有类似的问题,但在我的情况下,WAR中有一些以“:Zone.identifier
”结尾的文件。当我在 rdp会话中时,我将一些文件从Windows服务器直接复制到我的Mac的映射文件夹上的项目资源。这些文件在mac上没有引起任何问题,并且WAR也部署在这些文件来自的机器上没有问题。在所有其他Windows机器上,由于文件名中的“:”,战争以某种方式腐败。
所以不要只搜索带有“|”的文件,其他字符也会造成这种麻烦
答案 2 :(得分:0)
我遇到了类似的问题,我的问题和罗比(Robbie)一样
所以我认为我们不应该添加一些奇怪的字符,例如“ |” “-”表示我们的战争文件名
答案 3 :(得分:0)
在 Windows 10 中以管理员模式运行为我解决问题