springboot 部署 java.lang.NoClassDefFoundError(第三方依賴jar包的問題)
阿新 • • 發佈:2018-12-16
springboot+maven,老的專案中有好多第三方的jar包或者是自己的jar包,maven庫上沒有。
具體做法:
1.新建個lib目錄放jar包,我建在了src下;
<!--新增外部依賴--> <dependency> <groupId>com.plat</groupId> <artifactId>plat_core_2_0</artifactId> <version>2.0</version> <scope>system</scope> <systemPath>${basedir}/src/lib/plat_core_2_0.jar</systemPath> </dependency>
< basedir>是自帶變數,指的是當前專案的絕對路徑;
2.****把src/lib下的jar打到BOOT-INF/lib下 ****
在部署打成 jar包時,就會出現 java.lang.NoClassDefFoundError;解壓jar包看到自己的jar包沒有打入BOOT-INF/lib的lib包下;
修改pom.xml檔案中, <build> 標籤下加入一下內容:
<resources> <resource> <directory>src/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>
在重新 mvn clean package打成jar包後執行就ok了!