maven在linux下打包會漏掉非java文件

    如題所示,這個問題是我在linux下對maven項目進行打包的時候遇到的問題,在項目src/main/java目錄中除了java文件之外,有時候會加入一些別的配置比如properties類型的文件,或者meta文件,總之就是與項目開發有關的文件。

    當我們在開發的時候,一般是在windows上進行打包或者在ide中直接運行,不會出現漏掉非java文件的情況,如果將項目源代碼放到linux系統上,利用maven打包,竟然漏掉了非java文件,也是很奇怪的一件事情,當然,他不會導致項目打包失敗,只是在運行的時候,會導致一些功能失效或者直接報錯。

    其實解決這個問題也很簡單,以漏掉.meta文件爲例,我們需要在pom.xml配置文件中build節點的resources下增加一個resource,指定directory爲src/main/java目錄,然後配置include包含**/*.meta即可,如下所示:

    

    其中的include可以配置多個,根據需要指定即可。 

    這個問題以前從來沒有遇到過,或者沒有注意到,直到最近在gitlab上通過源代碼maven構建jar,然後生成鏡像,竟然出現這個問題,讓我很驚訝,最後把打出的jar文件拿出來一看,發現確實少了非java文件,而在windows上進行打包卻不會出現這個問題。這個我也不是很明白。

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