我在IntelliJ中调试一个使用多个ClassLoader的项目。我有许多库作为JAR包含在内,用于编译。当我调试时,我想启动没有类路径的JVM,因为我的自定义ClassLoader加载了依赖项。
但是IntelliJ会自动构建默认的类路径并将其传递给JVM。我找不到覆盖此行为的方法。是否可以强制以空类路径开头的调试配置?
谢谢, 乔恩
答案 0 :(得分:4)
可能,创建一个没有额外classpath元素的虚拟模块,并在Run / Debug配置中指定此模块使用类路径。
答案 1 :(得分:0)
在运行配置中,您可以将“使用类路径和模块的依赖关系”更改为无模块,但这不能解决此特定问题。
我认为你需要一个bootstrap模块,它只包含启动环境所需的代码,并且到了类加载器所涉及的位置,以及代码所具有的依赖关系,然后从该模块运行调试。我不是100%确定调试器会意识到这些类属于它所知道的源代码,但这将是我的第一次尝试。