我有一个外部jar,我编写了两个名为'TestConnector.java‘和'APIExampleUsageTestData.java’的类,并将这两个文件放在默认包下。
我已经将externalConnector.jar,TestConnector.java和APIExampleUsageTestData.java的3个工件都放到了一个名为'temp‘的文件夹中。
我已经在临时文件夹上下文中打开了命令行,并使用以下命令编译了类文件,它执行时没有任何错误:
javac -cp "externalConnector.jar" *.java
我可以看到在tem文件夹中有两个类文件。
APIExampleUsageTestData.class中有一个main方法,我尝试使用下面的命令调用该类,但失败了
在'C:\Users\AppData\Local\Temp\0.15429262750877082‘文件夹上下文中运行以下命令时
java -cp "externalConnector.jar" APIExampleUsageTestData
我收到错误Error: Could not find or load main class APIExampleUsageTestData
当我尝试运行该命令时,没有任何类路径条目来检查它抛出了什么错误:
java APIExampleUsageTestData
它抛出错误:Error: A JNI error has occurred, please check your installation and try again Exception in thread "main" java.lang.NoClassDefFoundError: com/external/connector/CustomException
它是一个Windows操作系统。你能告诉我如何成功地运行这个程序吗?
发布于 2021-04-10 07:29:39
您需要当前目录和jar文件都在类路径中。所以你想要(Linux / Mac):
java -cp .:externalConnector.jar APIExampleUsageTestData
或(Windows)
java -cp .;externalConnector.jar APIExampleUsageTestData
https://stackoverflow.com/questions/67031812
复制