Jenkins構建maven項目:無法找到非maven倉庫的jar包

        工作中使用jenkins構建maven項目時,會自動從遠程maven中央倉庫拉取pom.xml需要的jar包,但是有些jar包可能是自己本人集成的或者是maven中央倉庫找不到的,這個時候使用jenkins構建項目就會報錯。

        jenkins拉取的代碼,默認是在jenkins的安裝目錄下的workspace中,我是用yum安裝jenkins的,因此workspace的目錄是:/var/lib/jenkins/workspace

解決方案:

我項目的結構爲:

 將包放在指定的位置,然後在pom.xml中指定包的位置,我是把依賴放在項目中創建的lib文件夾下 

scope一定得是system,這樣就能找到本地的jar包了。

但是還有一個問題,就是你本地啓動沒問題,然後打包放到服務器上就發現啓動報錯,我仔細看了一下,發現是項目達成的jar包中並沒有該依賴。因此還需要在pom.xml的<build>中加入一下配置即可:

<resources>
            <resource>
                <directory>${project.basedir}/src/main/resources/lib</directory>
                <targetPath>BOOT-INF/lib/</targetPath>
                <includes>
                    <include>*.jar</include>
                </includes>
            </resource>
            <resource>
                <directory>${project.basedir}/src/main/java</directory>
                <targetPath>BOOT-INF/classes/</targetPath>
                <includes>
                    <include>cc</include>
                </includes>
            </resource>
            <resource>
                <directory>${project.basedir}/src/main/resources</directory>
                <targetPath>BOOT-INF/classes/</targetPath>
                <includes>
                    <include>*</include>
                </includes>
            </resource>
        </resources>

 

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