簡體   English   中英

是否有必要在pom中指定maven插件的版本?

[英]Is it necessary to specify version of a maven plugin in pom?

我正在使用NetBeans進行開發,它具有內置菜單功能,允許我們在pom中添加maven-checkstyle-plugin以進行代碼格式化。 但是,當您單擊該菜單時,它會自動在pom中添加以下代碼,但不包含<version>信息。 現在我的IDE繼續抱怨邊緣的一條小提示消息,說“版本”標簽丟失了。 我的問題是:添加的所有插件是否都必須在pom中有<version>標簽?

的pom.xml

 <reporting>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-checkstyle-plugin</artifactId>
                <configuration>
                    <configLocation>config/sun_checks.xml</configLocation>
                </configuration>
            </plugin>
        </plugins>
    </reporting>

沒有必要,但強烈建議使用版本標簽。

當在沒有POM或命令行中給出的顯式版本的情況下調用插件時,Maven 2.x用於選擇最新版本可用的最新版本,其中最新版本可以是版本或快照。 為了穩定起見,Maven 3.x更喜歡最新版本的最新版本。

鑒於自動插件版本解析所施加的不可重現構建的威脅,就POM中的插件聲明而言,此功能計划被刪除。 當檢測到缺少插件版本時,Maven 3.x的用戶會發現它會輸出警告,以鼓勵向POM或其父POM添加插件版本。 可以使用Enforcer規則requirePluginVersions來檢查POM中缺少的插件版本。

https://cwiki.apache.org/confluence/display/MAVEN/Maven+3.x+Compatibility+Notes

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM