Обзор
Это может быть тривиальный вопрос или он может не подходить для рассмотрения, но любое предложение будет полезным.
Когда кpom.xml
куча ошибок появляется при компиляции проекта в java jar без какого-либо изменения кода, что бы то ни было
Шаги
Клонировать Gitвыполнить репо для проекта и выполнить mvn clean compile
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 4.743 s
[INFO] Finished at: 2018-05-31T22:21:04+00:00
[INFO] Final Memory: 25M/389M
[INFO] ------------------------------------------------------------------------
Добавить новую необходимую зависимость в pom.xml того же проекта Ссылка MVN
<dependency>
<groupId>org.apache.storm</groupId>
<artifactId>storm-hive</artifactId>
<version>1.1.1</version>
</dependency>
Теперь снова выполните mvn clean compile
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project saavn-storm-lib: Compilation failure: Compilation failure:
[ERROR] /home/user/backend/storm/storm_lib/src/main/java/com/storm/bolts/Helper.java:[167,57] unreported exception org.json.JSONException; must be caught or declared to be thrown
.
.
.
.
Многократное появление сообщения об ошибке, связанного с JSONException, за которым следует
[ERROR] /home/user/backend/storm/storm_lib/src/main/java/com/storm/bolts/Helper.java:[132,58] cannot find symbol
[ERROR] symbol: method unescapeJson(java.lang.String)
[ERROR] location: class org.apache.commons.lang3.StringEscapeUtils
Подробнее
pom.xml
содержит
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.3.2</version>
</dependency>
Соответствующая зависимость также присутствует локально
ls -l ~/.m2/repository/org/apache/commons/commons-lang3/3.3.2/
commons-lang3-3.3.2.jar
commons-lang3-3.3.2.jar.sha1
commons-lang3-3.3.2.pom
commons-lang3-3.3.2.pom.sha1
_remote.repositories
Этот метод устарел в последующих выпусках, но он очень присутствует в этой версии и работал до сих пор.
Вопрос
- Почему они не были показаны в первую очередь, поскольку они, кажется, уже присутствуют, если код не был изменен?
JSONException
связанных с ошибками можно позаботиться, но почему вдруг исчезает какая-то зависимость и как это исправить?