gpt4 book ai didi

java - 无法在简单的 Java Soup 应用程序上找到或加载主类

转载 作者:行者123 更新时间:2023-11-30 06:43:02 26 4
gpt4 key购买 nike

我编译了我发现的这个简单程序 here

package com.stackoverflow.q2835505;

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

public class Test {

public static void main(String[] args) throws Exception {
String url = "https://stackoverflow.com/questions/2835505";
Document document = Jsoup.connect(url).get();

String question = document.select("#question .post-text").text();
System.out.println("Question: " + question);

Elements answerers = document.select("#answers .user-details a");
for (Element answerer : answerers) {
System.out.println("Answerer: " + answerer.text());
}
}

}

在终端中使用此命令:

javac -cp ./jsoup-1.10.2.jar Test.java

但是当我尝试运行它时,我会这样:

Error:Could not find or load main class

我找不到解决方案,问题出在哪里?谢谢。

最佳答案

您可能会遇到多个问题...

Javac。可以肯定的是,请像这样编译您的 Java 应用程序:

javac -cp ./jsoup-1.10.2.jar -d . Test.java

-d选项确保编译后的类放置在相应的package目录中:

com/stackoverflow/q2835505/Test.class

并且不在当前目录中。让我们check the man page只是为了确定(-d 选项):

Sets the destination directory for class files. The directory must already exist because javac does not create it. If a class is part of a package, then javac puts the class file in a subdirectory that reflects the package name and creates directories as needed.

If the -d option is not specified, then javac puts each class file in the same directory as the source file from which it was generated.

Java。最后,使用以下命令运行它:

java -cp .:./jsoup-1.10.2.jar com.stackoverflow.q2835505.Test

这会使用当前目录 (.) 和 jsoup-1.10.2.jar 作为类路径来运行您的应用。当前目录是强制,因此java 会找到您的Test.class 以及JSoup jar。

<小时/>

参见this nice answer有关 java 命令语法的更多信息。

关于java - 无法在简单的 Java Soup 应用程序上找到或加载主类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44098381/

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