Maven打包後找不到class文件的問題

1.問題起源

某個項目Jenkins打包後生成的war包裏沒有class文件,並且沒有任何報錯或者警告,打包也提示成功。

2.可能的原因

歷經各種折騰,偶然發現某個依賴的jar包在倉庫裏沒有對應的pom.xml文件。但是maven沒有報任何錯誤或者警告,導致一直沒有發現。至於爲何該依賴沒有pom.xml文件,還不清楚原因。


一般情況下,比如我們依賴的commons-dbcp,倉庫中包括的文件如下:


但是依賴的某個jar包,在maven倉庫裏包括的文件缺少了pom.xml。


後來將maven-compiler-plugin升級,可以看到在編譯時maven報錯,不過最終還是打包成功。雖然打包成功,但是裏面沒有classes文件。



3.解決方法

將依賴的jar包升級後重新deploy,項目裏的依賴也相應升級。並且將maven-compiler-plugin版本升級到最新,防止再次出現這種問題時看不到maven報錯。

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.7.0</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                    <encoding>UTF-8</encoding>
                </configuration>
            </plugin>


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章