Подтвердить что ты не робот

Предупреждение плагина сборки Maven "Дескриптор сборки содержит относительную ссылку на корневую файловую систему"

Начиная с некоторой версии плагина сборки, maven создает следующее предупреждение:

[ПРЕДУПРЕЖДЕНИЕ] Дескриптор сборки содержит относительный корневой каталог ссылка, которая не совместима с кросс-платформой/

Есть ли рекомендованное готовое к использованию решение для этого? Прямой googling предоставил мне много мусора и никакой реальной помощи. Повторная проверка сборки плагина Maven для сборки не дала мне ответа, возможно, у кого-то есть лучший навык поиска и может помочь.

UPDATE

Да, это, вероятно, из-за Linux-like outputDirectory, но как я должен переписать это, чтобы быть портативным? Посмотрел документацию по сборке плагинов и не нашел руководства по переносимости.

<fileSets>
    <fileSet>
        <directory>${basedir}/src/main/resources</directory>
        <outputDirectory>/</outputDirectory>
    </fileSet>
</fileSets>
4b9b3361

Ответ 1

Рабочее решение - указать пустой outputDirectory:

<fileSets>
    <fileSet>
        <directory>${basedir}/src/main/resources</directory>
        <outputDirectory></outputDirectory>
    </fileSet>
</fileSets>

Ответ 2

Использование пустого элемента outputDirectory работает, но я не удивлюсь, если кто-то предположит, что его можно было бы безопасно удалить.

Итак, чтобы быть более явным, вы также можете избежать предупреждения, написав:

<outputDirectory>${file.separator}</outputDirectory>

Ответ 3

Обратите внимание, что это может произойти в других местах, кроме как только /. Вышеуказанные ответы верны, но не охватывают этот случай.

Ищите что-то подобное в файле assembly.xml:

<fileSets>
    <fileSet>
        <directory>${basedir}/src/main/resources</directory>
        <outputDirectory>/lib</outputDirectory>         <!-- <<< look for this -->
    </fileSet>
</fileSets>

и измените на это:

<fileSets>
    <fileSet>
        <directory>${basedir}/src/main/resources</directory>
        <outputDirectory>lib</outputDirectory>
    </fileSet>
</fileSets>