我目前遇到一个问题,我认为它可以解决一些类路径问题,但我还没有找到任何解决方法。我目前有以下 java 代码:
import java.io.IOException;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
public class JsoupTest {
/**
* @param args the command line arguments
*/
public static void main(String[] args) throws IOException {
String url = "http://en.wikipedia.org/wiki/Main_Page";
Document doc = Jsoup.connect(url).get();
String result = doc.text();
System.out.println(result);
}
}
我将 jsoup-1.7.3.jar 文件放在与 java 文件相同的目录中(为简单起见)。
我运行了命令“javac -cp .:jsoup-1.7.3.jar JsoupTest.java”,它编译并运行良好。但是,当我去运行“java JsoupTest”时,出现以下错误
java JsoupTest
Exception in thread "main" java.lang.NoClassDefFoundError: org/jsoup/Jsoup
at JsoupTest.main(JsoupTest.java:31)
Caused by: java.lang.ClassNotFoundException: org.jsoup.Jsoup
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
... 1 more
可能的错误是什么?我应该如何修复它?我相信这是一个类路径问题,但在我编译它时应该已经设置了类路径吗?任何帮助,将不胜感激。谢谢。
最佳答案
和编译命令一样需要将jar包含在classpath中
java -cp .:jsoup-1.7.3.jar JsoupTest
对于 Windows 使用 .;
而不是 .:
java -cp .;jsoup-1.7.3.jar JsoupTest
关于java - 运行包含 Jsoup 依赖项的 java 类文件的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22362816/