jar:jar
цель плагина Maven JAR используется для " построения JAR из текущего проекта " и делает только одно: упаковывает содержимое target/classes
в JAR в каталоге target
, и все. Итак, когда вы запускаете mvn jar:jar
, конфигурация плагина в вашем pom используется , но jar:jar
не сделает больше вещей, чем я упомянул. Если target/classes
пусто или не существует, никакие классы или ресурсы не будут упакованы в полученный JAR.
package
фаза - это фаза жизненного цикла сборки , и когда вы вызываете mvn package
, все фазы до package
будут выполнены (process-resources
, compile
, process-test-resources
и т. Д.) И активирует цели плагина , связанные с этими фазами . Так, для проекта с <packaging>
типа jar
, jar:jar
связан с package
и будет выполняться во время фазы package
, но до этого цели, связанные с фазами, предшествующими package
, будут быть запущенным, включая тот, который копирует ресурсы в target/classes
.