Учитывает ли maven-compiler-plugin зависимости при проверке устаревших источников? - PullRequest
6 голосов
/ 30 октября 2011
Задача

Ant зависимость позволяет перекомпилировать исходный код Java, если какие-либо его зависимости (ссылочные классы, а не зависимости модуля) были изменены.Я быстро взглянул на org.apache.maven.plugin.CompilerMojo и org.codehaus.plexus.compiler.util.scan.StaleSourceScanner и, судя по всему, они нене принимать во внимание зависимости вообще.Выглядит так, как будто исходный код перекомпилируется, если его временная метка новее, чем у файла класса (плюс некоторая дельта).

Я что-то пропустил или Maven игнорирует случай, когда исходный код не былизменился, но его зависимость изменилась (следовательно, они оба должны быть перекомпилированы)?

Ответы [ 2 ]

0 голосов
/ 18 ноября 2011

Я использую maven-antrun-plugin.Там вы можете настроить его.Я не думаю, что это автоматически, хотя.То, что я имею в виду, вы должны указать вручную при первой компиляции.После опекуна Maven решит вашу проблему.

0 голосов
/ 31 октября 2011

Вы ничего не пропустили. Maven игнорирует этот случай. Вам придется обойти это с чистой сборкой.

Плагин maven-версии-плагина может проверить, доступны ли более новые версии, так что есть половина уравнения Чистая реконструкция - это все еще ручная работа.

...