码迷,mamicode.com
首页 > 其他好文 > 详细

@Resource无法import相关

时间:2018-12-14 10:57:04      阅读:190      评论:0      收藏:0      [点我收藏+]

标签:erb   打开   包含   pil   tcl   file   代码   问题   settings   

一、查找@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>

@Resource无法import相关

标签:erb   打开   包含   pil   tcl   file   代码   问题   settings   

原文地址:https://www.cnblogs.com/ZJOE80/p/10118014.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!