【发布时间】:2015-12-04 05:49:21
【问题描述】:
你好 StackOverflow。我从来没有真正在这里发过帖子,但我把它用作参考,并无数次地学习了有关编程的各种主题,所以我感谢大家:)
我想坦率地说,这是一个项目,是正在进行的实习职位面试的一部分。该公司非常友善,并愿意在我多次遇到困难时提供帮助,但如果可能的话,我想尝试自己完成这项工作,以表明我可以通过自己的发现解决我的问题。
话虽如此,我得到了一个 pom.xml 文件,一个骨架主文件(其中插入了从 URL 获取标题的非常基本的尝试)。
在这个项目之前我从未使用过(甚至听说过)pom 文件,所以它们对我来说仍然非常、非常新。
我目前正在尝试关注this reference,但是当我尝试运行该程序时,我遇到了这个问题:
Exception in thread "main" java.lang.NoClassDefFoundError: org/jsoup/Jsoup
at com.appdetex.sampleparserjavaproject.Main.main(Main.java:26)
Caused by: java.lang.ClassNotFoundException: org.jsoup.Jsoup
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 1 more
这是给定的 pom.xml 文件,到目前为止我还没有更改:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.appdetex</groupId>
<artifactId>sampleparserjavaproject</artifactId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
<name>sampleparserjavaproject</name>
<url>**Not actually *'s, just wish to hide the github URL**</url>
<dependencies>
<dependency>
<!-- jsoup HTML parser library @ http://jsoup.org/ -->
<groupId>org.jsoup</groupId>
<artifactId>jsoup</artifactId>
<version>1.8.3</version>
</dependency>
</dependencies>
</project>
这是我当前的源代码。 [注意:我的错误中的 Java:26 是包含 Document doc = .....]
package com.appdetex.sampleparserjavaproject;
import java.io.IOException;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
/**
* Main Java Class
*/
public class Main
{
public static void main(String args[])
{
Document doc = Jsoup.connect("http://www.javatpoint.com").get();
String title = doc.title();
System.out.println("URL title = " + title);
} // End of main method
} // End of class Main
我正在通过以下命令运行项目:
$ java -cp target/sampleparserjavaproject-1.0-SNAPSHOT.jar com.appdetex.sampleparserjavaproject.Main
如果我注释掉 main() 中的 3 行并仅打印一个“Hello World”,例如它可以正常工作,但 JSoup 似乎不想合作。
对 JSoup 和 pom 文件基本上没有经验,我不太确定下一步该做什么,但从我所看到的情况来看,我似乎必须以某种方式更改/编辑我的 pom 文件。
任何帮助将不胜感激。
谢谢 - 杰克
【问题讨论】:
-
我用 jsoup-1.7.2.jar 测试了你的代码,它工作正常。检查你的类路径是否存在 jsoup jar 文件。如果不添加 jar 文件到类路径(lib 文件夹)。
-
我该怎么做呢?你的意思是java的类路径吗?
-
检查你的 lib 文件夹。
-
我找不到你。无论如何,您的问题是您的 Jsoup jar 文件不在类路径中。
-
请查看this manual 了解什么是 maven 以及如何在您的 Java 项目中使用它。
标签: java maven url jsoup pom.xml