Добавление сторонней банки в затененную банку Maven без добавления ее в локальный репозиторий

Я уже нашел здесь ответ на Stack Overflow, как включить сторонний JAR-файл в проект, не устанавливая его в «локальный репозиторий»:

Могу ли я добавить jar в maven 2 buildpath без их установки?

Но когда я использую плагин Maven Shade для создания JAR, который также включает в себя все зависимости проекта, сторонний JAR не включается автоматически.

Как я могу заставить плагин Maven Shade добавить такой сторонний JAR в затененный JAR?

Согласно полученному ответу, я заставил это работать. Что я сделал, добавил этот фрагмент в начало моего pom.xml:

<repositories>
  <repository>
    <id>repo</id>
    <url>file://${basedir}/repo</url>
  </repository>
</repositories>

Затем добавил зависимость для моего проекта, также в pom.xml:

<dependencies>
  <dependency>
    <groupId>dummy</groupId>
    <artifactId>dummy</artifactId>
    <version>0.0.0</version>
    <scope>compile</scope>
  </dependency>
</dependencies>

А затем запустил командную строку, чтобы добавить пакет в 'repo':

mvn org.apache.maven.plugins:maven-install-plugin:2.3.1:install-file
    -Dfile=<my-jar>.jar -DgroupId=dummy -DartifactId=dummy
    -Dversion=0.0.0 -Dpackaging=jar -DlocalRepositoryPath=`pwd`/repo/

(Не уверен, что путь репо должен быть полным, но он не хотел рисковать.)

Содержимое подкаталога репо теперь:

repo/dummy/dummy/0.0.0/dummy-0.0.0.jar
repo/dummy/dummy/0.0.0/dummy-0.0.0.pom
repo/dummy/dummy/maven-metadata-local.xml

Теперь я могу проверить это для контроля версий, и у меня нет локальных или удаленных зависимостей.

Ответы на вопрос(3)

Ваш ответ на вопрос