是否可以在没有模块信息的情况下使用依赖项.class在 Java 9 模块中
2022-09-04 02:59:27
我创建了两个小项目de.app1和de.app2,其中de.app1使用de.app2。App
Test
├── de.app1
│ ├── de
│ │ └── app
│ │ └── App.java
│ └── module-info.java
└── de.app2
└── de
└── test
└── Test.java
模块信息.java在第一个项目中只包含module de.app1 {}
我编译了第二个项目并创建了一个jar文件:
javac de/test/Test.java
jar cf app2.jar de/test/Test.class
然后尝试像这样编译第一个项目:
javac -cp ../de.app2/app2.jar de/app/App.java module-info.java
失败是因为找不到。当我编译没有模块信息的项目时.java,一切都像往常一样工作。Test
是否可以以某种方式使用来自 Java 9 模块中非 Java 9 模块的 jar 中的类?特别是对于依赖于第三方项目(例如apache-commons,...)的项目,我认为需要这样的东西。