2013-02-10 77 views
0

我发现这个问题 - >Import custom libraries in Java罐子默认包

而且@Andy托马斯 - 克拉默说,“stdlib.jar”从“Java中的介绍节目的”类没有包,所以他们在默认包中。

这不是一种坏习惯吗?如果你有没有包的东西,IDE的自动完成速度会比较慢。而且这也意味着我们不能使用包中不同于默认值的类的任何类在该jar中使用?

可有人告诉我,我们如何来解决这个?

编辑: 我有2个罐子,我把它们放在引用库中,它们都有一堆默认包中的类。当我在不同的包中创建类时,默认情况下 - 让我们说org.myquestion我不能从jar中访问类。

这是一件真让我心烦......首先,我不能创建自己的包,并从罐子使用任何。其次,我的IDE(我使用eclipse)自动完成会变得很糟糕 - 我猜想它会一次搜索到多个类......我想要做的是将某些名称空间中的jar添加到...并能够访问它们像org.someones.libs.SomeClass

回答

0

这当然是不好的做法,使用默认的包。软件包对类进行分组,并为它们提供访问保护(受保护,软件包专用)并作为唯一的名称空间运行。

您可以随时使用类从每一个包,其和为默认或者没有,你总是可以混合使用。

+0

我该如何去解决这个?鉴于stdlib.jar巫婆使用默认包 - 我可以封装它在一些包? 谢谢! – Flow 2013-02-10 17:43:15

+0

你真的需要吗?我假设你正在组织你自己的课程。你有没有问题的例子代码? – verhage 2013-02-10 17:45:16

+0

那么我有2个罐子,我把它们放在引用库中,它们都有一堆默认包中的类。 当我在不同的包中创建类,然后默认 - 让我们说org.myquestion我不能从jar中访问类。 这是真的让我感到困惑... 首先,我无法创建自己的包装并使用任何来自罐子的东西。 其次我的IDE(我使用eclipse时)自动完成去可怕 - 我猜它搜索一下子MEANY类... 我想要做的就是把莫名其妙的罐子中的一些命名空间......并能访问他们像org.someones.libs.SomeClass – Flow 2013-02-10 18:00:23

0

下载JAR源代码,并建立它自己对JAR和添加任何你like.That的将解决你的问题包名称。

Importing classes inside JAR files that are in the default package

+0

虽然这个链接可能回答这个问题,最好在这里包含答案的基本部分,并提供参考链接。 如果链接页面更改,则仅链接答案可能会失效。 – Ghost 2015-02-03 02:24:26