@Resource无法import相关

在spring项目中加入注解@Resource,但是import里没有,我还以为这个注解没有了,虽然可以用@Autowired替代,但是我还是想搞清楚。


一、查找@Resource在那个jar包里
@Resource注解的类路径是:javax.annotation.Resource,是annotation-api.jar包中的类,是JDK1.6支持的注解。tomcat6以上,tomcat已经包含了这个jar包,不需要自己导入
二、maven
由此想到应该是maven的问题,maven默认按照自己的jdk版本进行编译,打开安装目录\maven\conf\settings.xml
这里写图片描述
竟然是jdk1.4!
接下来问题就变成了修改maven默认jdk版本
有两种方法:
方式1.修改maven全局jdk
打开 \maven\conf\settings.xml ,修改上图所示部分

<profiles>     
      <profile>       
           <id>jdk-1.6</id>       
           <activation>       
               <activeByDefault>true</activeByDefault>       
               <jdk>1.6</jdk>       
           </activation>       
           <properties>       
               <maven.compiler.source>1.6</maven.compiler.source>       
               <maven.compiler.target>1.6</maven.compiler.target>       
               <maven.compiler.compilerVersion>1.6</maven.compiler.compilerVersion>       
           </properties>       
   </profile>      
</profiles>    

方式2. 局部修改-修改项目pom.xml
在项目pom里增加如下这段:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.1</version>
    <configuration>
        <source>1.6</source> <!-- 源代码使用的开发版本 -->
        <target>1.6</target> <!-- 需要生成的目标class文件的编译版本 -->
        <encoding>UTF-8</encoding>
        <!-- 一般而言,target与source是保持一致的,但是,有时候为了让程序能在其他版本的jdk中运行(对于低版本目标jdk,源代码中需要没有使用低版本jdk中不支持的语法),会存在target不同于source的情况 -->

        <!-- 这下面的是可选项 -->
        <meminitial>128m</meminitial>
        <maxmem>512m</maxmem>
        <fork>true</fork> <!-- fork is enable,用于明确表示编译版本配置的可用 --> 
        <compilerVersion>1.3</compilerVersion>

        <!-- 这个选项用来传递编译器自身不包含但是却支持的参数选项 -->
        <compilerArgument>-verbose -bootclasspath ${java.home}\lib\rt.jar</compilerArgument>

    </configuration>
</plugin>
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值