Каковы зависимости org.apache.commons.text?

Я установил Java-пакет org.apache.commons.text, чтобы использовать его методы StringEscapeUtils. Когда я компилирую программу, она терпит неудачу из-за целого ряда ошибок со ссылками на элементы пакета вместе с сообщением

error: package org.apache.commons.lang3 does not exist

Очевидно, org.apache.commons.text зависит от org.apache.commons.lang3? Это меня удивило, поскольку ни страница документа, ни гид пользователя для org.apache.commons.text не упоминают никаких зависимостей. Есть ли способ узнать, что мне действительно нужно установить, чтобы использовать StringEscapeUtils, кроме утомительных проб и ошибок?

mvnrepository.com/artifact/org.apache.commons/commons-text/1‌ .4. Используйте инструмент сборки, например gradle или Maven, и он определит зависимости. Вот как каждая библиотека Java должна быть загружена и использована в настоящее время (и в течение многих лет).
JB Nizet 31.07.2018 20:24

Архитектура проекта исправлена, я не могу добавить в него новый инструмент сборки. А другого выхода нет?

PiotrChernin 31.07.2018 20:40

Конечно, вы можете скачать все зависимости самостоятельно. Я дал ссылку на страницу с их списком.

JB Nizet 31.07.2018 20:45

Выглядит неплохо - lang3 - единственная зависимость, и, похоже, она не имеет самой себя. Спасибо @JBNizet!

PiotrChernin 31.07.2018 20:51
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
1
4
1 292
1

Ответы 1

Maven поможет вам в этом разобраться. Я не эксперт в области maven, так что может быть лучший способ сделать это, но я сделал это так. Создайте где-нибудь поддиректорию (например, / tmp / blah). И создайте в этом каталоге 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.mycompany.app</groupId>
  <artifactId>my-app</artifactId>
  <packaging>jar</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>my-app</name>
  <url>http://maven.apache.org</url>
  <dependencies>
    <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-text</artifactId>
        <version>1.4</version>
    </dependency>
  </dependencies>
</project>

Затем из этого каталога спросите maven с:

mvn dependency:tree

Вы получите массу результатов, но в итоге это все, что у вас получится:

[INFO] com.mycompany.app:my-app:jar:1.0-SNAPSHOT
[INFO] \- org.apache.commons:commons-text:jar:1.4:compile
[INFO]    \- org.apache.commons:commons-lang3:jar:3.7:compile

Это должен быть полный список - вашему проекту требуется текст apache commons, а этому проекту требуется commons lang3.

Другие вопросы по теме