Что касается необходимости запускать его каждый раз, вы должны присоединить запуск плагина yui к фазе выполнения «generate-sources».
Добавьте следующее в ваш плагин (важной частью является "элемент фазы ", чтобы прикрепить его к жизненному циклу):
<plugin>
<groupId>net.alchim31.maven</groupId>
<artifactId>yuicompressor-maven-plugin</artifactId>
<executions>
<execution>
<phase>generate-sources</phase>
<goals>
<goal>compress</goal>
</goals>
</execution>
</executions>
<configuration>...</configuration>
</plugin>
Таким образом плагин будет запускать каждую сборку на этапе создания источников.Поэтому каждый раз, когда вы меняете свои java-скрипты, для которых вы настроили плагин, выходной файл .js будет обновляться, как только вы запустите что-то вроде:
mvn compile
mvn test
mvn install
mvn package
и т. Д.
Приведенное выше описание приводит к тому, что минимизированные (и, возможно, агрегированные) файлы создаются ранее в жизненном цикле, но tomcat: run не может их найти!