Невозможно правильно импортировать зависимости - PullRequest
0 голосов
/ 08 ноября 2018

В настоящее время я пытаюсь создать программу очистки веб-страниц с помощью 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.

Это моя переменная окружения, так как я думал, что это будет связано с ней. env vars fixed

Эта проблема очень странная для меня, потому что, кажется, я все правильно импортирую. У меня также есть jsoup.jar и извлеченные файлы jsoup в корневом каталоге моего проекта, если это правильный способ сделать это. Я использую java10SDK для компиляции через cmd, и я пытался использовать intelliJ ultimate, чтобы использовать их внедрение зависимостей, но я не могу понять это. Я также пытался скомпилировать с помощью java7, я не уверен, действительно ли он скомпилирован с ним с помощью метода, который я пробовал.

Изображение Classpath по запросу: fixed classpath

1 Ответ

0 голосов
/ 08 ноября 2018

Вы должны добавить поддержку Maven в ваш проект, потому что это самый простой способ управлять всеми зависимостями. Для этого вам просто нужно выбрать папку проекта в IntelliJ на панели инструментов проекта и выбрать «Добавить поддержку платформы», а затем прокрутить вниз, пока не появится «Maven».

Как только вы добавите поддержку Maven в свой проект, вам просто нужно включить автоимпорт, IntelliJ сам покажет вам меню, чтобы выбрать, хотите ли вы включить их или нет, вы должны выбрать Да.

Наконец, вам нужно добавить этот блок в новый файл, созданный в папке вашего проекта с именем pom.xml , непосредственно перед закрытием блока проекта ():

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

Как только вы это сделаете, теперь вы можете импортировать и использовать пакеты JSOUP в своем проекте. Если вы хотите добавить больше библиотек, вы можете проверить: https://mvnrepository.com/ и выбрать нужную версию библиотеки, которую вы хотите установить, а также скопировать и вставить блок зависимостей в свой файл Maven.

В качестве совета я настоятельно рекомендую вам использовать менеджер зависимостей (например, Maven f.e.) для своих проектов и всегда добавлять его после создания проекта.

Надеюсь, это поможет!

...