当引用简单的.jar文件时,Eclipse会显示一个错误,该错误说明:
包java.awt可以从多个模块访问:
package test;
import javax.swing.JDialog;
public class Test {
public static void main(String[] args) {
new JDialog();
}
}
将一个.jar文件添加到类路径中,只使用javax/swing
文件夹结构(不需要文件)将导致出现错误。我使用的是JDK10/12(两者都不起作用)。将编译器遵从性设置为1.8
可以使整个过程再次运行。在另一台具有Eclipse 2018-09
的计算机上,它与编译器遵从性设置为10
一起工作。
我在Eclipse2019-03
,在一个(出于测试目的)新安装的Eclipse 2018-09
上运行良好。为什么?
编辑June/2020(解决方案)
正如答案所正确说明的那样,这是一个很久以前就内置在Java中的限制,直到最近才强加给我们。我是在将一个有几十个依赖项的大项目迁移到Maven时接触到它的。2000年左右就有图书馆了!有“元库”,它由几个打包在一起的库组成。因此,除了识别还需要什么(和其他的一起放入垃圾箱!)、更新违反规则的库或为它们找到替代品之外,别无他法。这花了我很多很多个小时。
最后,它成功了,我们有了一个很好的Maven项目。
这是由
java.awt
包,该包也存在于系统库中,但在Java平台模块系统(JPMS)中,不允许在多个模块中使用相同的包。如果使用Modulepath和类路径,则类路径上的所有内容都作为
模块处理(在您的示例中,java.awt
包存在于系统模块java.desktox
中,也通过模块
中类路径上的JAR处理)。
java
更改为java_util
,java_util
),并重新创建JAR.class
文件,则必须首先反编译.class
文件Eclipse RCP 2020-09,Java JDK 11,Window10 步 1.创建一个简单的插件项目(单击[下一步][完成]) 2.要求捆绑包:org.eclipse.jdt.core 3.创建Java文件 编译错误:
尝试在JMX控制台中注册MBean时,我收到以下错误消息: 我正在使用Eclipse,我的项目结构中没有文件。 当我注释我对javaeeapi的依赖关系时,错误消失了,但是包不是JAR的一部分。
我有PHP(以及其他一些东西)的背景,我正在玩Python。在PHP中,当我想包含另一个文件时,我只需执行或,该文件中的所有内容都包含在内。 但是在python中,推荐的方法似乎是从文件导入,但这似乎更适合包含库和东西?如何在多个文件中分离代码?唯一的方法是使用一个包含一大堆函数调用的文件,然后导入15个其他文件吗?
我的环境: Java 11 不确定如何修复此错误:
我的项目在Java1.8u151中运行良好。我正在尝试将它升级到Java12,但是我得到了以下错误。 这是唯一的错误,在Java12中的大多数包中都会重复出现,但在Java8中效果良好。 我已尝试将所有jar文件从模块路径移动到类路径。模块路径中只有Java 12库。我在Java版本的软件包中寻找任何不推荐的东西。我用不同的Java版本尝试了3种不同的系统(都运行OS-X10.13.6、10.13
我已经研究了好几天了,似乎所有的答案都是特定于Eclipse的。我在Visual Studio Code上遇到此错误: 这将出现在包含导入。 使用: Java 11.0.4 Gradle构建时没有问题,因此错误消息表示终端和VSCode之间存在某种断开连接。 到目前为止,我已经: 确保和匹配 任何帮助都将不胜感激,谢谢您的时间! 我知道这个问题,但一直没有答案。