如何在scala中获取导入类的包?

时间:2017-02-14 15:31:54

标签: java scala import package

我有当前的导入:

import com.test.test1.ver4.commons.{HelloWorld=> SomeCommon}

然后我使用以下内容:

val myCommons=Reader.getClassesForPackage(classOf[SomeCommon].getPackage) //The Reader expects for the Package

我想更改' ver4'通过动态,允许传递任何其他版本。

我尝试做最简单的事情 - 通过编写以下内容来获取包:

val p =Package.getPackage("com.test.test1.ver4.commons.HelloWorld"))

但我一直都是空的。

我尝试使用以下方式打印所有包:

    val p = Package.getPackages()

    for(pac <- p) println(pac.getName())

但它似乎只包括&#39; system&#39;包裹如:

java.nio
java.security.cert
java.util.zip
java.nio.file

有人可以建议做什么吗?

Tahnks很多。

1 个答案:

答案 0 :(得分:0)

你想要Package.getPackage("com.test.test1.ver4.commons")。但请注意,要使它工作,您需要已经从此包中加载了至少一个类。您可以使用Reflections库来查找此类,请参阅例如Can you find all classes in a package using reflection?