Spring 注解 读取不到包中的注解

org.springframework.beans.factory.BeanDefinitionStoreException: Failed to load bean class: test.action.BiStockAction; nested exception is java.io.FileNotFoundException: class path resource [com/MEBS/common/mgr/action/EcsideAction.class] cannot be opened because it does not exist
Caused by: java.io.FileNotFoundException: class path resource [com/MEBS/common/mgr/action/EcsideAction.class] cannot be opened because it does not exist

但我在Spring配文中已经写了<context:component-scan base-package="com" />

我看错误好像是 class path resource [com/MEBS/common/mgr/action/EcsideAction.class] cannot be opened because it does not exist
这个编译过的类不存在,你到class目录下先看看 EcsideAction.class 有没有这个文件
如果没有,把这个类修改下(加个回车什么的)再保存,你的开发工具应该会给你自动编译生成.class文件追问

EcsideAction.class 这个文件是在我的Jar包里

追答

jar放在了 lib 目录了没

追问

果然好了,一开始我用添加User Liberary方式添加的Jar包,包放在Lib下就好了,再问您一下,User Liberary添加jar包方式的话,为什么就报错了呢?

追答

因为添加User Liberary只会在你编译、写测试时有用,发布时并不会发布到web中
所以开发web,jar包都要直接放到lib目录下

温馨提示:内容为网友见解,仅供参考
无其他回答

Spring中基于代理实现的注解未生效解决方案
概述指出,SpringBoot中一个类内包含两个方法时,若类内直接调用另一方法,基于代理实现的注解如@Transactional、@Async、@Retryable可能失效。解决方案包括方法拆分至不同类中、自我注入和获取代理对象。方法拆分简单粗暴,将类内方法转移至不同类。自我注入则在原类中注入自身实例,通过注入后的实例调用方...

为什么在使用spring注解开发时,会出现找不到bean的问
一种常见且有效的方式是调整 basePackages 的值,明确指出应用中所有需要扫描的包。例如,可以将 basePackages 设置为包含所有业务逻辑、服务、控制器等关键组件的包路径,以确保它们能够被 Spring Boot 正确识别。此外,另一种策略是使用 @ComponentScans 注解,为多个不同的包指定扫描范围,实现更精细化的...

spring jpa使用@service注解时失效该如何解决?
那就是没有扫描到文件,看看打包后里面包路径是不是spring扫描的包路径,项目运行时打包成jar的项目相当于把这个压缩包里面的东西解压到classes里面。Spring 框架对 JPA 提供的支持主要体现在如下几个方面:首先它使得 JPA 配置变得更加灵活。JPA 规范要求,配置文件必须命名为 persistence.xml,并存在于类...

SpringMVC注解 Cannot find class [spring.controller.HelloWorld...
看你用的@Controller标签,那你servlet的配置见中应该有这样的配置 <!-- 把标记了@Controller注解的类转换为bean --><context:component-scan base-package="spring.controller"\/> 最后的那个controller的bean配置应该也就不需要了,删除吧

自主开发的、带有 @Component 的组件在Spring Boot 项目中不生效的解决...
默认情况下,@ComponentScan注解会扫描当前包及其所有子包中的组件。而 @SpringBootApplication 注解包含了@ComponentScan,所以 Spring Boot 框架会自动扫描 Spring Boot启动类当前包及其所有子包中的组件类。而我们的组件因为不在自动扫描范围内,所以无效。(3)问题解决 在 Spring Boot启动类中使用 @...

spring怎么获取在jar包中自定义注解的实体类上的注解?
把打包后的jar文件与spring注解依赖jar包放在同一个JVM下运行(就是运行时能在classpath找到那些注解的相关类)应该没有问题的!还有就是要保证编译和运行的jdk版本相同

@SpringBootApplication注解报错
在我搭建最简单的SpringBoot模块是,出现SpringApplication无法import包,网上找了 很多的方法都试了,像什么删掉本地仓库 repository\\org\\springframework\\boot 目录下的spring-boot-autoconfigure 文件夹,这些方法试过了,但根本没有效果 在这个页面观察,可以看到所需要依赖基本上都是引进来的,但就是无法...

Springboot使用Fastjson的注解@JSONField(serialize = false)不起作用...
但需注意,要启用此方法,需在类上添加@EnableWebMvc注解,这可能会导致Spring Boot的自动配置失效,只适用于希望完全控制Spring MVC配置的情况。另一种方法是直接在Spring容器中添加自定义消息转换器Bean。这种方法更灵活,不会影响Spring Boot的自动配置,但需要手动管理转换器的配置和使用。

Spring注解使用yml注入属性出现的问题整理
解决方案是:一个是在@Configuration的这配置中加入注解,切换属性加载位置,@PropertySource(value = "classpath:taskconfig.yml", ignoreResourceNotFound = true , factory = MixPropertySourceFactory.class),因为PropertySource注解默认不支持yml,因此使用了自定义的MixPropertySourceFactory。或者使用@Depends...

spring读取配置文件的方式(spring如何读取配置文件)
java读取配置文件的几种方法如下:方式一:采用ServletContext读取,读取配置文件的realpath,然后通过文件流读取出来。注释注入(Annotation-basedInjection)是通过Java5的注解来代替XML配置文件,在Java类中添加相应的注解,Spring将会读取该注解并注入到相应的Bean中。配置文件SpringBoot使用一个全局的配置文件...

相似回答