java - 如何在 IDEA 中使用类路径而不是模块路径运行 Java 9 应用程序?

标签 java intellij-idea java-9 java-platform-module-system module-path

当我在 IDEA 中运行主类时,它会将模块及其依赖项放在模块路径上。是否可以将其更改为类路径?

最佳答案

如果您不定义模块信息,IDEA 将在类路径上设置应用程序和您的依赖项。因为你有一个模块信息,它是一个显式模块,所以它必须在模块路径上。通常,您现在会将依赖项作为自动模块处理。

无论如何,您的依赖项至少有充分的理由位于类路径中。我们在这里讨论过 Why Java 9 does not simply turn all JARs on the class path into automatic modules?

例如,mymodule 依赖于一个自动模块,但是它需要一个还不能成为自动模块的 jar。在命令行上它会像这样:

java -cp legacy.jar -p "mymodule.jar;automodule.jar;"-m mymodule/com.example.mymodule.Application

IMO intellij 目前不支持。作为至少在类路径上运行整个应用程序的解决方法,您可以重命名模型信息以暂时禁用/不作为拼图模块。

关于java - 如何在 IDEA 中使用类路径而不是模块路径运行 Java 9 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45370986/

相关文章:

java - JAVA中将Integer类型的Linked List转换为String类型的Set

Java 泛型 : wrong argument type with getClass()

intellij-idea - IntelliJ : Generating getters/setters for fields with underscores in the name

java - Gradle:无法应用 'compile'

java - 原子整数的compareandexchange()与compareandset()

java - 在面板和主机之间发送信息

eclipse - 字段的 IntelliJ 调用层次结构

java - 使用 Java 9 的 Eclipse 插件项目中的传递依赖项

Netbeans 8.2 没有响应

java - 用于检查有效 XML 的 native Java API