Struts 2库在我被放置在;“Java资源\库”;文件夹为什么?

Struts 2库在我被放置在;“Java资源\库”;文件夹为什么?,java,struts2,Java,Struts2,当我开发Struts2应用程序时,我 异常启动筛选器struts2 java.lang.ClassNotFoundException:org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter“ 出于这个原因,我也将过滤器更改为FilterDispatcher。然后我也得到了相同的错误。因此,我将相同的jar文件放在WebContent\WEB-INF\lib文件夹中,然后它就可以正常工作了。我不明白为什么会发生这种

当我开发Struts2应用程序时,我

异常启动筛选器struts2 java.lang.ClassNotFoundException:org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter“


出于这个原因,我也将过滤器更改为
FilterDispatcher
。然后我也得到了相同的错误。因此,我将相同的jar文件放在
WebContent\WEB-INF\lib
文件夹中,然后它就可以正常工作了。我不明白为什么会发生这种情况。任何人都可以提供帮助。

在运行时,WEB服务器将从保存在的jar中提取类文件ode>WEB\U INF\lib和保存在
WEB\U INF\classes
目录中的其他类文件。

我不确定您的类路径中有哪些库。请查看其中解释了运行应用程序所需的所有依赖项

或者从Struts2官方网站下载并运行它的最佳方式,看看运行它需要什么


您似乎缺少了
struts2 core.jar
,尽管此错误可能是由于其他原因造成的

我已通过将jar文件放置在WEB-INF\lib文件夹中解决了此问题。但我的问题是,为什么IDE无法识别我是何时使用build path->configure build path选项放置jar文件的。4应该是这样。只需清理并重新创建即可我从上面提到的异常中得到了解决方案,但我的疑问是,只有当我将jar文件仅放在lib文件夹中时,当我使用选项“build path->configure build path”时,这个问题才得以解决“选项我遇到了这个问题。最终,您的JAR应该在lib文件夹中,因为web服务器只会查看这个特定位置,通常我们会将文件放在lib文件夹中,并使用您的IEDI创建/配置路径。您已经尝试了clean and build选项,tomcat工作目录也被清理,但相同的问题重复出现。
FilterDispatcher
是旧的(Struts 2.0)。
StrutsPrepareAndExecuteFilter
是新的。您不能将一个“更改”为另一个,因为“它不工作”,您必须根据Struts2版本选择正确的版本。然后下载所有需要的库,并将它们放在正确的位置。如果仍然存在问题,请像往常一样更新问题。您不应手动将库放在
WEB-INF/lib
中,因为这可能不是用于运行应用程序的位置n、 要获得更好的选择,请阅读使您能够管理服务器上部署的web应用程序的服务器文档。