1. 程式人生 > >Spring boot 初步踩坑記(一)

Spring boot 初步踩坑記(一)

初步使用spring boot + mybatis 組合,然而在eclipse 內執行 妥妥的 一點的問題都沒有。打包成jar 和war ,執行時,報錯: Field XXXXin XXXX.DemoApplication required a bean of type ‘XXXXXX’ that could not be found.

Action:

Consider defining a bean of type ‘XXXXX’ in your configuration.

百度的結果是:mapper 沒有掃描進去,於是在application 主類上了scan: @MapperScan(“com.XXX.mapper”) public class XXXApplication extends SpringBootServletInitializer{

另外還有網友提供說是,application所在位置一定要在最上層,application只能掃描當前包,和子包內的類。 我的就在最上層,所有此處不用修改。 立馬打包嘗試,結果有了新錯,搞了半天,錯誤如下: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name ‘XXXX’: Unsatisfied dependency expressed through field ‘XXX’; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘XXXX’ defined in file [D:\work\Tomcat\webapps\XX\WEB-INF\classes\com\XXXX.class]: Invocation of init method failed; nested exception is java.lang.IllegalArgumentException: Property ‘XXXX’ or ‘XXXXX’ are required

度娘說是有幾種原因: 1、註解錯誤或注入失敗 2、jar包衝突 3、XXX類配置有問題

新手問題,各種註解也不是很瞭解,全靠度娘,加註解換註解,錯誤依舊,3這個問題仔細看了下類,配置沒有問題。 jar包衝突,沒什麼好辦法,一個個刪了試。結果問題依舊。。。。、

後來百般檢查下,發現一個本地jar,沒有打包進去,吐血啊。。。。

果然將jar 複製到 tomcat 專案下的lib 內 錯誤解決。

再次總結:

這個錯誤,重點看最後 Property ‘XXXX’ or ‘XXXXX’ are required 我的本地jar就是XXXX所在的jar,這個錯誤跟notfound 類似,都是說類找不到,之前一直以為是前邊的錯誤,註解什麼的搞錯了呢。 這篇就先到這裡,下篇講下 打包本地jar 遇到的坑。