Problem:
weblogic.management.ManagementException: [Deployer:149082]You cannot deploy application 'expcontrol' without version. The application was previously deployed with version 'V2.0'.
Update operation failed - no deployments changed.
Solution:
原因:expcontrol.ear文件在之前的版本部署时是带了版本号的,如:
在更新应用文件时,也要求带版本号,否则会报以上的错。询问了以前做配置的同事,都不知道这个V2.0是从哪里来的。
后来检查了原来的ear文件,在expcontrol.ear/META-INF/下的MANIFEST.MF文件里有这样的片段:Weblogic-Application-Version: V2.0
这个代码就定义了ear文件在weblogic时显示的版本号。
但是搜索整个工程,也没发现在哪里定义Weblogic-Application-Version的文件。因此每次在发布时,都手动给MANIFEST.MF文件添加上Weblogic-Application-Version: V2.0信息,弄得烦而且让人担心。
后来在研究ADF的安全性时,发现拆分完的主应用工程/src/META-INF里缺少了一个jazn-data.xml,从原工程里copy过来,再发布ear文件,v2.0的版本信息自动添加上去了。至此,一个隐患解除^_^
--转自