您的位置:首页 > 编程语言 > Java开发

Eclipse的Java开发中jar导入后无法使用包内class的解决方案

2014-04-19 14:45 330 查看
请注意, 本方法只对于自己的包有效, 如果你的类内部互相调用, 此方法会失效, 需要每个类文件都进行一次CTRL+SHIFT+O进行包的导入.



如上图的一个结构, algs4.jar和stdlib.jar是我导入的2个jar.

但是由于这两个jar中所有的类都在default package中, 所以在MNN工程的4个默认包中都不能使用.

这是由于Java语言本身的限制导致的.

在Java里你不能在一个非default的package里使用一个jar里的default package.

国内我基本没看到有人提出解决方案, 这个解决方案是我从stackflow上搜索到的....
http://stackoverflow.com/questions/12287146/accessing-referenced-libraries-from-packages-in-eclipse
解决方案:

新建工程

新建文件夹

新建一个包[注意 使用你喜欢的名字 不要使用default package]

在这个包上右键导入jar,

[注意 不是作为包导入 而是把所有的类文件导入]

具体操作: 右键src -> Import -> achieve file->选择相应的jar文件

这时可以看到所有文件都导入到你命名的包里了, 右键文件夹 -> Export -> 选择jar文件类型->设置你想要的jar文件名[随意]

这样就生成了一个不受default-package限制的jar文件

唯一不足是每次使用其中的类需要额外导入, 但是没关系, eclipse会自动帮你导入的.

如有疑惑请邮件至lancelod.liu@gmail.com.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐