希望有人之前遇到过此事。我正在运行Spring STS 2.3.0,当尝试使用来自javax.annotations.Resource的@Resource注释时,我得到“访问限制:由于对所需库的限制,无法访问类型资源”。我正在使用JDK 6u18。
我尝试将JDK Compliance更改为1.5和1.6,并且两者都产生相同的错误。
干杯, -Ed
答案 0 :(得分:8)
这对我有用:改变eclipse(STS)项目构建路径|库选项卡|选择JRE系统库[J2SE-1.4] |编辑按钮|从执行环境单选按钮更改为J2SE 1.4(jdk1.6.0_21)到Workspace默认JRE(jdk1.6.0_21)。
答案 1 :(得分:2)
如果您使用的是Plug-in Project而不是常规Java项目,请尝试设置
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
你的manifest.mf中的。 (更改后,您可能需要右键单击项目并执行PDE工具 - >更新类路径
答案 2 :(得分:0)
您可以在已弃用和受限制的API部分中将配置的编译器错误更改为警告或忽略:禁止引用(访问规则)。
答案 3 :(得分:0)
Eclipse应该告诉你它遇到问题的库(比如,X
)。这样的事情正在发生:
现在,您对同一个库具有传递依赖关系,但是您的类路径中有两个不同的版本。这是不允许的。解决方案是从类路径中删除内容,而是将特定库添加到Eclipse构建路径中。
答案 4 :(得分:0)
您可以打开.classpath
文件并使用
<\classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/
org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
代替。
答案 5 :(得分:0)
感谢您的回答。也为我工作。
原始问题是: 使用@Resource时显示访问限制警告。
解决问题的步骤: 构建路径 - &gt;配置构建路径 - &gt; libraries-&gt;选择JRE系统库 - &gt;编辑 - &gt;选择工作区默认值。