您的位置:首页 > 编程语言 > Java开发

Struts2扫描jar包

2015-08-24 09:38 363 查看
关于Struts2的Annotation没有被Struts2的配置文件扫描到问题:

由于需要,我们会把源文件打成jar包,由于使用了Struts2框架,会发现读取不到里面配置的Annotation的Action,

而在XML文件中配置的Action可以读取,

这种情况可能会包

Thereis no Action mapped for namespace / and action name test associated with context path.

此时如果把jar还原到classes目录下面,启动,可以正常访问。

由于注解Annotation是Convention包提供的,所以查看Convention的文档,找到
http://struts.apache.org/release/2.3.x/docs/convention-plugin.html#ConventionPlugin-Actionsinjarfiles

文档上说需要在Struts2的配置文件中 加上:
<constant name="struts.convention.action.includeJars" value=".*?/myjar1.*?jar(!/)?,.*?/myjar2*?jar(!/)?"
/>

其中 myjar1和myjar2为jar的名称


重新启动tomcat,看是否能正常访问,如果正常就OK了。

如果还是和原来一样的错误

我们可以将jar包中的 /META-INF/MANIFEST.MF

中的文件内容删除,这样再试试,应该就OK了

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: