[关闭]
@xtccc 2017-01-04T21:27:25.000000Z 字数 616 阅读 1585

Boot / Loading / Runtime

给我写信
GitHub

此处输入图片的描述

Scala


目录


1. 从classpath中找出某些加载的类


假设有一个基类Base,我们希望在classpath中找出Base有哪些派生类。
可以借助ClassUtil来实现。

  1. package cn.gridx.scala.lang.classes.classutils
  2. import org.clapper.classutil.ClassFinder
  3. object FindSubClass extends App {
  4. val finder = ClassFinder()
  5. val classes = finder.getClasses()
  6. val classMap = ClassFinder.classInfoMap(classes)
  7. val plugins = ClassFinder.concreteSubclasses("cn.gridx.scala.lang.classes.classutils.Base", classMap)
  8. plugins.foreach(println)
  9. }
  10. trait Base
  11. class A extends Base
  12. class B extends Base



输出为:

cn.gridx.scala.lang.classes.classutils.B
cn.gridx.scala.lang.classes.classutils.A

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注