Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在运行时识别模块_Java_Maven - Fatal编程技术网

Java 在运行时识别模块

Java 在运行时识别模块,java,maven,Java,Maven,我有一个多模块maven项目。在maven项目中,一个模块与其他模块有几个依赖关系。我想检查每个类在运行时来自哪个顶级模块——有没有任何方法可以通过反射实现这一点 例如: com.company:running-module:jar:1.0.0 +- com.company:top-level-module-1:jar:1.0.0:compile | \- com.company:low-level-module-1:jar:1.0.0:compile | \- ClassOfI

我有一个多模块maven项目。在maven项目中,一个模块与其他模块有几个依赖关系。我想检查每个类在运行时来自哪个顶级模块——有没有任何方法可以通过反射实现这一点

例如:

com.company:running-module:jar:1.0.0
 +- com.company:top-level-module-1:jar:1.0.0:compile
 |  \- com.company:low-level-module-1:jar:1.0.0:compile
 |     \- ClassOfInterest.java
 +- com.company:top-level-module-2:jar:1.0.0:compile
 |  \- com.company:low-level-module-1:jar:1.0.0:compile
 |     \- ClassOfInterest.java
 \- com.company:top-level-module-3:jar:1.0.0:compile
    \- com.company:low-level-module-2:jar:1.0.0:compile
       \- OtherClassOfInterest.java

检查
classeofinterest
将返回
top-level-module-1
top-level-module-2
,而检查
其他感兴趣的classeofinterest
将返回` top-level-module-3。

如果有办法的话,那将非常麻烦


修改每个模块,使其具有不同的顶级包,然后通过检查完整的类名,您可以轻松地使用反射来完成此操作。

如果有方法可以做到这一点,那将非常困难


修改每个模块,使其具有不同的顶级包,然后通过检查完整的类名,您可以轻松地使用反射来完成此操作。

为什么需要此信息?你想解决什么样的问题?为什么需要这些信息?你想解决什么样的问题?