java - 为什么会出现错误: Could not find or load main class SearchResults occur?

标签 java jvm classpath

我正在用java编程语言编写代码。

写完后,我用以下命令编译了代码:

javac BingImageSearch.java -classpath ./gson-2.8.1.jar -encoding UTF-8 -Xlint:deprecation

然后我使用下面的命令来运行java程序:

java -cp ./gson-2.8.1.jar BingImageSearch

但它显示错误:

Error: Could not find or load main class BingImageSearch

一切看起来都正确,我的 gson-2.8.1.jar 文件与 java 文件位于同一目录中。

为什么会发生这种情况?

最佳答案

Java 使用当前文件夹“.”默认情况下作为类路径。

当您告诉 JVM 使用某些特定的 jar 文件作为类路径时,它会忽略当前文件夹。

您需要组合 java 的多个位置(JAR 文件和当前文件夹)才能找到所有必需的类文件。

运行应用程序的正确命令行需要是:

java -cp .:./gson-2.8.1.jar BingImageSearch

关于java - 为什么会出现错误: Could not find or load main class SearchResults occur?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58924645/

相关文章:

java - 在 Java Web 应用程序中加载 Applet 时出现 ClassNotFoundException

java - Android 只从 iso-8601 获取时间

java - 为什么Spring MVC会以404响应并报告“在DispatcherServlet中未找到带有URI […]的HTTP请求的映射”?

java - 在java中使用FTP程序

java - Ant:从类路径中排除一个 jar。我想让它表现得像它不存在一样

java - 服务器启动时在类路径中引导可执行 jar 文件

java - Spring:将转换矩阵插入 .properties 文件

java - 如何从 JavaVM 32 位升级到 JavaVM64 位

java - 了解 Java 垃圾收集中的足迹测量

java - 设置 htmlunit 的类路径