我正在使用JAR文件中的一些类,它们属于一个包(com.abc.xyz)。
我写的类也属于该包,但我无法将我的文件捆绑到该JAR文件中。是否可以将属于同一个包的类分布在多个JAR文件中?
答案 0 :(得分:16)
默认情况下,绝对。
但是,如果您想要以确保来自特定包的类仅从
答案 1 :(得分:7)
除非JAR包含sealed,否则这是非常可行的。
答案 2 :(得分:4)
我不明白为什么不可能。重要的是这些类在类路径中。
答案 3 :(得分:3)
这可能不是你想要做的事情。如果它在同一个包装中,它是否应该打包在一起(我相信Jigsaw打算允许在模块之间拆分包装,但那是一个不同的水壶)。
如果任何一个包在清单中标记为密封,则可以阻止它。我建议将整个罐子标记为密封的。
如果类上有不同的签名者,并且类由同一个类加载器加载,也可以阻止它。
如果使用不同的类加载器加载类,虽然“命名空间”将是相同的,但实际上您不会获得包(以及受保护的相关部分)访问。
答案 4 :(得分:0)
如果你想扩展第三方图书馆的功能但是它们不是开放式的和/或你没有来源,有时你必须这样做