java - 无法从 some.jar 中提取模块名称:在顶级目录中找到了 some.class(模块中不允许使用未命名的包)
问题描述
我们正在将我们的软件迁移到 Java 9。我正在开发的应用程序使用非常旧的 Java 库,并且没有机会更新它们。这是我们的pom.xml
文件片段:
<project>
<repositories>
..our private repositories
</repositories>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<source>11</source>
<target>11</target>
<executable>javac10</executable>
</configuration>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>windows</id>
<activation>
<os>
<family>windows</family>
</os>
</activation>
<dependencies>
<dependency>
<groupId>com.latencybusters.lbm</groupId>
<artifactId>UMSJMS</artifactId>
<version>5.3.6</version>
<classifier>windows</classifier>
</dependency>
</dependencies>
</profile>
</profiles>
我们当前的操作系统是Windows
. 所以问题在于 com.latencybusters.lbm 库。
Intellij Idea
不突出module-info.java
文件以及任何其他类。因此,预计该项目将被编译。但是跑步mvn clean compile -X
会返回
...
[WARNING] Can't extract module name from UMSJMS-5.3.6-windows.jar: lbmmsrc.class found in top-level directory (unnamed package not allowed in module)
...
module-info.java: module not found: UMSJMS
这个错误的原因可能是什么?
解决方案
推荐阅读
- python - 匹配中文单词的正则表达式,不包括匹配单词开头和结尾的其他单词
- nim-lang - 最终从 STDIN 读取压缩文件:正确的方法是什么?
- angular - 有没有办法在我公司用 Angular 制作的内部应用程序上针对本地 Active Directory 对用户进行身份验证
- javascript - 使用 jQuery 禁用特定的下拉菜单?
- elasticsearch - Elastic metricbeat 总系统文件描述符
- angular - 为什么在 Chrome devtool 中模拟离线会导致无法访问 localhost?
- python-3.x - Joblib 嵌套并行执行不使用可用内核
- python - Python Pandas df,将货币金额中的$,M和K替换为int的最佳方法
- browser - 询问新的firefox最新版本(v89)问题
- python - Pandas 脚本在函数内部无法正常工作,但如果在 jupyter 笔记本上逐步使用,则可以正常工作