gpt4 book ai didi

java - 包含的 Jsoup 库将编译但不运行

转载 作者:行者123 更新时间:2023-11-30 11:18:08 25 4
gpt4 key购买 nike

我正在尝试探索 Java 中的网络抓取,我只是从一个非常基本的 Jsoup 程序开始。我很确定我正在做的事情存在某种路径问题。我尝试了不同的变体,只是为了让它工作,通过将库包含在与我的源文件相同的目录中来简化过程(在我弄清楚发生了什么的同时简化路径)。这是我一直在做的事情和输出:

javac -cp jsoup-1.7.3.jar URLParse.java

上面的编译没有错误(当我将 jar 放在自己的文件夹中并指定路径时,它也编译正常),当我尝试运行程序时发生以下情况:

java -cp jsoup-1.7.3.jar URLParse.java
Exception in thread "main" java.lang.NoClassDefFoundError: URLParse/java
Caused by: java.lang.ClassNotFoundException: URLParse.java
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:323)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:268)
Could not find the main class: URLParse.java. Program will exit.

以下是代码以防有帮助:

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;

import java.io.IOException;

public class URLParse{

public static void main(String[] args){


String URL = "http://www.google.com";

try{

Document doc = Jsoup.connect(URL).get();
System.out.println("Ok here");
String title = doc.title();

System.out.println(title);
} catch (IOException e){
e.printStackTrace();
}

}

}

感谢任何帮助或建议。

最佳答案

我认为这里的问题是您没有在类路径变量中包含包含主类代码的目录。

java -cp jsoup-1.7.3.jar URLParse.java

应该是

java -cp .:jsoup-1.7.3.jar URLParse

在 Mac/Linux 上

java -cp .;jsoup-1.7.3.jar URLParse

在 Windows 上。请注意,您没有在要运行的类中包含 .java。

Information taken right from this.

关于java - 包含的 Jsoup 库将编译但不运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23973627/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com