首页 > 解决方案 > 无法正确导入依赖

问题描述

我目前正在尝试用 jsoup 制作一个网络抓取程序。但是,当我编译我的程序时,我导入的所有内容似乎都没有显示出来,并且它错误地说它找不到我从 jsoup 引用的任何对象。

这就是我导入它的方式:

`

import java.io.*;//for website
import java.net.URL;//retrieve url
import java.util.logging.Level;//log errors
import java.util.logging.Logger;
import java.io.*; //I/O stream
import java.util.logging.Level;
import java.util.logging.Logger;
import org.jsoup.Jsoup;//web scraper
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import java.net.URL;`

这些是我遇到的错误类型:

Images.java:25: error: cannot find symbol
        for(Element el : img){// for each element, get source (src) url

找不到来自 jsoup 的元素。

这是我设置的环境变量,因为我认为这与它有关。 环境变量已修复

这个问题对我来说很奇怪,因为我似乎正确地导入了所有内容。我的项目的根目录中也有 jsoup.jar 和提取的 jsoup 文件,如果这是正确的方法。我正在使用 java10SDK 通过 cmd 进行编译,并且我曾尝试使用 intelliJ Ultimate 来使用它们的依赖注入,但我似乎无法弄清楚。我也试过用java7编译,我不确定它是否真的用我试过的方法编译。

根据要求的类路径图像: 固定类路径

标签: javaintellij-ideadependency-injectionjsoupjava-10

解决方案


您应该为您的项目添加Maven支持,因为它是管理所有依赖项的最简单方法。为此,您只需从项目工具栏中选择IntelliJ中的项目文件夹,然后选择“添加框架支持”,然后向下滚动直到看到“Maven”。

将 Maven 支持添加到项目后,您只需要启用自动导入,IntelliJ 本身会显示一个菜单供您选择是否要启用它们,您必须选择是。

最后,您需要将此块添加到项目文件夹中创建的名为pom.xml的新文件中,就在项目块关闭之前(< /project>):

<dependencies>       
   <dependency>
       <groupId>org.jsoup</groupId>
       <artifactId>jsoup</artifactId>
       <version>1.11.3</version>
   </dependency>
</dependencies>

一旦你这样做了,现在你可以在你的项目中导入和使用JSOUP包。如果要添加更多库,可以查看:https ://mvnrepository.com/并选择要安装的库的所需版本,然后将依赖项块复制并粘贴到 Maven 文件中。

作为提示,我强烈建议您为您的项目使用依赖管理器(如 Maven fe),并在创建项目后始终添加它。

希望能帮助到你!


推荐阅读