У меня есть рабочее задание, которое развертывается в Amazon EMR. Поскольку ЭМИ предоставляет hadoop-core
банку, я настроил зависимость в моем pom
, как provided
:Включая исключенные банки в intellij run конфигурациях
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-core</artifactId>
<version>0.20.2-cdh3u6</version>
<scope>provided</scope>
</dependency>
Проблема заключается в том, что, когда я хочу отладить банку внутри IntelliJ, он не может найти один из классов этот банку, org.apache.hadoop.util.RunJar
.
Можно ли настроить Intellij, чтобы включить эту банку в путь класса при отладке/запуске jar внутри intellij, но все же исключить эту банку из выходной банки?
Путь к фактическому банку на моей локальной машине /Users/jbrown/.m2/repository/org/apache/hadoop/hadoop-core/0.20.2-cdh3u6/hadoop-core-0.20.2-cdh3u6.jar
- Я попытался добавить -cp /Users/jbrown/.m2/repository/org/apache/hadoop/hadoop-core/0.20.2-cdh3u6/hadoop-core-0.20.2-cdh3u6.jar
к параметрам виртуальной машины в конфигурации запуска, но тогда работа не могла работать вообще.
Предполагая ... Maven? Если да, пожалуйста, уточните для пользователей, у которых может быть ответ. Также рассмотрите вопрос о пересмотре вашего обращения к каждому JAR с последовательными соглашениями об именах, чтобы облегчить пользователям понимание. – Harmelodic