无法识别作为外部自定义jar添加到应用程序的.class文件

扎梅尔

我使用maven为dao和模型包创建了一个外部自定义jar文件,并将该jar文件导入要访问dao方法的客户端应用程序中,但是它给出了java.lang.NoClassDefFoundError:com / test / users / dao / UserDao,但是.class文件存在于jar文件中。我可以在客户端Web应用程序中看到该特定的自定义jar文件的包和方法。在服务端项目中,我们将其作为客户端应用程序的罐子,maven pom文件具有以下依赖性

groupId-- com.test

artifactId--服务

名称--testServiceGjcp

包装-罐子

版本-1.0.0-BUILD-SNAPSHOT

根据上述依赖项属性groupid,aritfact id和版本,我们在客户端应用程序maven pom.xml文件中将其作为依赖项提供,然后在客户端maven依赖项中添加了生成的服务jar文件并构建了客户端应用程序,jar已经创建并能够查看生成的jar文件中的.class文件。

在职项目结构如下 在此处输入图片说明

但是,即使存在.class文件及其对应的包以及该特定.class文件的方法,我们仍然会收到java.lang.NoClassDefFoundError。

在这里,我粘贴了实际错误的完整堆栈跟踪。

11:39:34.466 [http-bio-8080-exec-18] DEBUG o.s.web.servlet.DispatcherServlet - DispatcherServlet with name 'appServlet' processing GET request for [/SpringSecurity/login]

处理程序处理失败;嵌套异常是java.lang.NoClassDefFoundError:com / test / users / dao / UserDao在org.springframework.web.servlet.DispatcherServlet.triggerAfterCompletionWithError(DispatcherServlet.java:1259)〜[spring-webmvc-3.2.8.RELEASE.jar :3.2.8.RELEASE]在org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:945)〜[spring-webmvc-3.2.8.RELEASE.jar:3.2.8.RELEASE]在org.springframework .web.servlet.DispatcherServlet.doService(DispatcherServlet.java:856)〜[spring-webmvc-3.2.8.RELEASE.jar:3.2.8.RELEASE]在org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet。 java:953)[spring-webmvc-3.2.8.RELEASE.jar:3.2.8.RELEASE]在org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:844)[spring-webmvc-3.2.8 [RELEASE.jar:3.2.8.RELEASE],位于javax.servlet.http.HttpServlet。路径为[/ SpringSecurity]的上下文中servlet [appServlet]的service()引发异常[处理程序处理失败;嵌套的异常是java.lang.NoClassDefFoundError:com / test / users / dao / UserDao],根本原因是org.apache.catalina.loader.WebappClassLoader.loadClass(网址为org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1556)的WebappClassLoader.java:1711)com.test.controller的com.test.users.service.MyUserDetailsS​​ervice.loadUserByUsername(MyUserDetailsS​​ervice.java:31) .sun.reflect.NativeMethodAccessorImpl.invoke.MainController.login(MainController.java:53)in sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java :43)在java.lang。

尼古拉斯·菲洛托(Nicolas Filotto)

实际上,您真正的问题是java.lang.NoClassDefFoundError: com/test/users/dao/UserDao at com.test.users.service.MyUserDetailsService.loadUserByUsername(MyUserDetailsService.java:31)

我怀疑有ClassLoader问题,例如,如果MyUserDetailsServiceUserDao分别位于两个不同的Web应用程序中,则它们将位于两个不同的(隔离的)ClassLoader中,这样它们将无法看到彼此。它们需要位于相同的Classloader(根类加载器或Web应用程序类加载器)中,或者UserDao可以位于根类加载器(Webapp类加载器的父calssloader)中,而MyUserDetailsS​​ervice位于Web应用程序类加载器中

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

自定义相机应用程序,但无法创建用于存储图像的文件夹

来自分类Dev

将Java文件添加到Android应用程序

来自分类Dev

将自定义标签添加到TIFF文件

来自分类Dev

CFBundleTypeIconFile数组是强制添加iOS应用程序上的自定义文件类型支持的吗?

来自分类Dev

如何通过代码将自定义configSections添加到app.config文件

来自分类Dev

即使将外部jar文件添加到项目中,也无法导入方法

来自分类Dev

无法将源代码文件添加到Windows Forms应用程序?

来自分类Dev

如何将自定义属性添加到Symfony Doctrine YAML映射文件中

来自分类Dev

Electron OSX应用程序菜单-如何添加自定义文件菜单?

来自分类Dev

无法将自定义设置文件添加到Asp.Net Core 3.1 WebApi

来自分类Dev

如何将文件提供程序添加到MacOS Swift应用程序?

来自分类Dev

由于升级到Xcode 12,因此无法将自定义plist文件添加到产品目标

来自分类Dev

无法将源代码文件添加到Windows Forms应用程序?

来自分类Dev

自定义Android系统的“设置”应用程序时,即使该文件存在,也无法在sdcard上定位文件

来自分类Dev

将Linux程序添加到“其他应用程序”列表中,以从Nautilus打开文件

来自分类Dev

将外部文件添加到jar

来自分类Dev

为什么我无法在Web ASP应用程序中打开自定义web.config文件?

来自分类Dev

无法使用Qt Assistant从Qt应用程序内部获取自定义帮助文件以进行工作

来自分类Dev

将.dll文件添加到应用程序

来自分类Dev

如何将包含多个jar的外部文件夹添加到Web应用程序的Maven构建中?

来自分类Dev

将Maven框架添加到intelijidea中的Web应用程序后,无法创建servlet文件

来自分类Dev

在extjs6应用程序构建中添加自定义文件

来自分类Dev

在Spotlight中将文件添加到您的应用程序

来自分类Dev

无法将.tsx文件添加到Node.js Web应用程序项目

来自分类Dev

如何在java Web应用程序的lib文件夹中公开自定义jar?

来自分类Dev

如何将自定义 js 文件添加到 css 文件等角度组件

来自分类Dev

如何将文件上传添加到电子表格作为自定义菜单选项?

来自分类Dev

gradle ear 插件 - 自定义 jar 添加到 EAR 根文件夹

来自分类Dev

如何将自定义文件添加到自定义文章列表页面

Related 相关文章

  1. 1

    自定义相机应用程序,但无法创建用于存储图像的文件夹

  2. 2

    将Java文件添加到Android应用程序

  3. 3

    将自定义标签添加到TIFF文件

  4. 4

    CFBundleTypeIconFile数组是强制添加iOS应用程序上的自定义文件类型支持的吗?

  5. 5

    如何通过代码将自定义configSections添加到app.config文件

  6. 6

    即使将外部jar文件添加到项目中,也无法导入方法

  7. 7

    无法将源代码文件添加到Windows Forms应用程序?

  8. 8

    如何将自定义属性添加到Symfony Doctrine YAML映射文件中

  9. 9

    Electron OSX应用程序菜单-如何添加自定义文件菜单?

  10. 10

    无法将自定义设置文件添加到Asp.Net Core 3.1 WebApi

  11. 11

    如何将文件提供程序添加到MacOS Swift应用程序?

  12. 12

    由于升级到Xcode 12,因此无法将自定义plist文件添加到产品目标

  13. 13

    无法将源代码文件添加到Windows Forms应用程序?

  14. 14

    自定义Android系统的“设置”应用程序时,即使该文件存在,也无法在sdcard上定位文件

  15. 15

    将Linux程序添加到“其他应用程序”列表中,以从Nautilus打开文件

  16. 16

    将外部文件添加到jar

  17. 17

    为什么我无法在Web ASP应用程序中打开自定义web.config文件?

  18. 18

    无法使用Qt Assistant从Qt应用程序内部获取自定义帮助文件以进行工作

  19. 19

    将.dll文件添加到应用程序

  20. 20

    如何将包含多个jar的外部文件夹添加到Web应用程序的Maven构建中?

  21. 21

    将Maven框架添加到intelijidea中的Web应用程序后,无法创建servlet文件

  22. 22

    在extjs6应用程序构建中添加自定义文件

  23. 23

    在Spotlight中将文件添加到您的应用程序

  24. 24

    无法将.tsx文件添加到Node.js Web应用程序项目

  25. 25

    如何在java Web应用程序的lib文件夹中公开自定义jar?

  26. 26

    如何将自定义 js 文件添加到 css 文件等角度组件

  27. 27

    如何将文件上传添加到电子表格作为自定义菜单选项?

  28. 28

    gradle ear 插件 - 自定义 jar 添加到 EAR 根文件夹

  29. 29

    如何将自定义文件添加到自定义文章列表页面

热门标签

归档