Spring tool suite编译不通过:Access restriction: The type XXX is not accessible


一、发现问题

通过jaxb操作xml,引入javax.xml.bind相关包时,spring tool suite编译不通过。


二、分析原因

Spring tool suite就是eclipse上套了一层spring的插件,本质还是eclipse。Eclipse默认把某些受访问限制的API设成了ERROR。,所以会编译不通过。


三、解决问题

方法1:

把对某些限制API的级别设置为warning

Windows -> Preferences -> Java -> Compiler -> Errors/Warnings -> Deprecated and trstricted API -> Forbidden reference (access rules): -> change to warning。

方法2:

在project build path中先移除JRE System Library,再添加库JRE System Library,重新编译后就一切正常。

方法3:

工程上右键->工程属性->ja。va builder path->Libraries标签,点击JRE System Library里面的Access rules,add sun/** 为accessible,如果该项存在,就edit。

方法4:

Windows -> Preferences -> Java -> Installed JREs -> 选择用的JDK -> Edit -> Add External JARs。


四、总结

我实验了前两种方法,可以实现。还有一些方法是参照网上的,请大家自己试一试。


参考地址:http://blog.sina.com.cn/s/blog_6714fba70100x6mz.html


你可能感兴趣的:(eclipse,SpringToolSuite,编译不通过)