Как сохранить символические ссылки при распаковке tar с помощью плагина сборки maven

Я пишу дескриптор сборки maven, и одна из задач — загрузить tar-файл, распаковать его перед созданием окончательного tar-архива из множества компонентов.

Я не могу понять, как сохранить символические ссылки из tar с помощью плагина сборки maven. Кто-нибудь видел эту проблему раньше?

<assembly>
    <id>myassembly</id>
    <formats>
            <format>dir</format>
    </formats>
    <includeBaseDirectory>false</includeBaseDirectory>
    <dependencySets>
            <dependencySet>
                    <useProjectArtifact>false</useProjectArtifact>
                    <outputDirectory>.</outputDirectory>
                    <unpack>true</unpack>
            </dependencySet>
    </dependencySets>

</assembly>

person GBP    schedule 18.07.2013    source источник
comment
к сожалению, нет возможности создать символическую ссылку через maven-assembly-plugin, и я не знаю плагина, который может это сделать. Может быть, вы можете решить эту проблему, используя плагин groovy или exec-maven-plugin?   -  person khmarbaise    schedule 19.07.2013
comment
Спасибо, попробую.   -  person GBP    schedule 19.07.2013


Ответы (2)


Сейчас все становится лучше. Я вижу, что плагин зависимости maven и плагин сборки правильно поддерживают символические ссылки. Используются следующие версии и определения:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-dependency-plugin</artifactId>
    <version>2.10</version>
</plugin>
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-assembly-plugin</artifactId>
    <version>2.5.4</version>
</plugin>
person Roman Nikitchenko    schedule 14.05.2015
comment
Я могу подтвердить, что maven-dependency-plugin 2.10 хорошо работает с заархивированными символическими ссылками на OSX из коробки. Благодарю вас! - person Oscar Hierro; 05.10.2015
comment
Я использую версию 2.6 maven-assembly-pluging, но мои символические ссылки все равно ломаются при распаковке. Есть ли что-то, что мне не хватает? - person radlan; 06.12.2016
comment
Если это распаковка, это может быть версия плагина зависимостей. - person Roman Nikitchenko; 09.12.2016
comment
Это работает и для меня. Если вы столкнулись с какими-либо проблемами, когда символические ссылки не сохраняются, убедитесь, что они существуют во время создания, перед упаковкой, а также во время распаковки/разархивирования. - person SylvesterAbreuLoreto; 15.08.2019

Сохранение символических ссылок не поддерживается ни в одном из плагинов maven на моменте. Я обошел эту проблему, используя подключаемый модуль maven executor, который выполнял для меня сценарий оболочки и артефакты tar и untar.

person GBP    schedule 09.08.2013
comment
еще в силе заявление? - person user2124712; 11.05.2015
comment
@ user2124712 версия 2.10 поддерживает символические ссылки - person Alex thunder Shevchenko; 23.05.2016
comment
Сборка Maven ›= 2.5.4 также поддерживает символические ссылки (конечно, 2.6.0) — проблемы. apache.org/jira/browse/MASSEMBLY-750 - person paulcm; 31.10.2016