個人開發的時候,沒必要搭建nexus私服的,所以對於我們用spring boot 開發工程的時候,我們會引入本地jar包,比如我,會在根目錄下建立一個lib包,然后把本地的jar 放到里面,在添加到classpath引用。如圖:
然后你就會發現,我們在打jar包的時候,無法將lib下的jar一起打包到boot的fat jar中。導致程序無法啟動。所以你就按照下面的配置,配置一下pom的打包插件就ok了。(找了半天都沒看到幾個說明白的),只需要更改pom.xml的build之間的東西。
<project.basedir>D:/xxx/workspace/項目名稱</project.basedir>
<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> <plugin> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.8</source> <target>1.8</target> <encoding>UTF-8</encoding> <compilerArguments> <extdirs>${project.basedir}/lib</extdirs> </compilerArguments> </configuration> </plugin> </plugins> <resources> <resource> <directory>${project.basedir}/lib</directory> <targetPath>BOOT-INF/lib/</targetPath> <includes> <include>**/*.jar</include> </includes> </resource> <resource> <directory>src/main/resources</directory> <targetPath>BOOT-INF/classes/</targetPath> </resource> </resources> </build>
紅色字體是后面配置進去的。注意 必須要寫BOOT-INF 這是boot打包后的jar里面的目錄結構。這樣就會把你本地的jar一起打包。哎!記下了,一下午終於清爽了!