错误出处:Access restriction: The type 'FtpClient' is not API (restriction on required library 'C:\Program Files\Java\jdk1.8.0_101\jre\lib\rt.jar')
如图所示:
解决办法:
(1)、确定 Java TM 是版本6 而不是版本7 (因为现在从官网在线安装java时默认为7了,这样eclipse默认使用jre7下面的jar包,而FtpClient在jre7中被修改了,其构造函数FtpClient()被定义为private类型,FtpClientftp=new FtpClient()会报错:cannont instantiate the type FtpClient);
因为我的JDK版本是1.8,所以这个解决方案不适合于我,寻求另一种解决方案。
(2)、因为sun.net包里的类,在eclipse里默认是不让用的。因此这里我们要做的就是运行eclipse使用这个包。步骤如下:
工程上右键->Properties--> Java Build Path --> Libraries --> JRE System Library --> Access rules --> 双击, 如下图:
点击”Add”按钮,添加一个名为sun/**的rule为Accessible,如图:
点击确定之后,应用这个规则,即可解决这个问题。