通常我将我的小应用程序(2-3 个类)打包成一个 jar 文件。依赖库(其他 jars)被添加到清单文件中。但这次因为我只有一个类文件。我决定保持类文件原样并尝试运行它。因此,我将一个类文件和所有 jar 文件放在同一个文件夹中,然后我尝试运行该类文件
1)java MyClass令我惊讶的是它找不到jar文件
2) java -classpath "pathtoonejar" MyClass 现在它说找不到 MyClass 本身:)
3)java -classpath ".;pathtoonejar" MyClass 现在找不到其他jar中包含的类
4) 所以,java -classpath ".;pathtoonejar;jartwo.jar;jarthree.jar" MyClass
这是正确的方法,也是我可以运行我的 Class 文件的唯一方法。Comm'on,我觉得这真的很奇怪。首先在语句2中,java本身在同一目录中找不到类文件。我也尝试将所有 jar 放在一个 lib 目录中并尝试
5) java -classpath ".;lib/*.jar" MyClass 这也没用。
4 是运行类文件的唯一正确方法。