我已导入在Eclipse项目中的javatuples-1.2.jar。我这样做是为了运行Java元组单位类节目。以下是代码:
package mynewpackage;
import org.javatuples.Unit;
class Mynewclass2 {
public static void main(String[] args)
{
Unit<String> u
= new Unit<String>("This is demo text!");
System.out.println(u);
}
}
但是,让上运行的以下错误:
Exception in thread "main" java.lang.NoClassDefFoundError: org/javatuples/Unit
at mynewpackage.Mynewclass2.main(Mynewclass2.java:9)
Caused by: java.lang.ClassNotFoundException: org.javatuples.Unit
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:583)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
... 1 more
根据文献,我可以很容易地看到,增加成功的元组的jar文件。但是,以下是该项目目录,参考文献,错误罐子和Eclipse中的整个程序。
如何解决这个问题,并正确地运行Java程序的元组?
当我(尝试)重现您的设置:
src/module-info.java
,...然后下载并添加lib/javatuples-1.2.jar
到构建路径。点击瓣:
module myproject {
requires javatuples;
}
之后,该程序已经可以运行,但Eclipse的警告:
Name of automatic module 'javatuples' is unstable, it is derived from the module's file name.
为了解决这个问题,你可以(命令行)运行:
myproject>jar --file=lib/javatuples-1.2.jar --describe-module
No module descriptor found. Derived automatic module.
[email protected] automatic
requires java.base mandated
contains org.javatuples
contains org.javatuples.valueintf
因此,日食警告已经是有点讨厌:javatuples是“正确”的模块名称。
希望能帮助到你。
右键单击javatuples-1.2.jar>构建路径>添加到构建路径。
NoClassDefFoundError的是一个错误,当Java运行时系统尝试加载类的定义时抛出,那类的定义不再可用。
注释是欢迎。