java.lang.NoSuchMethodError:使用JWT時遇到的問題

  • 今天在使用JWT生成token的時候遇到一個錯誤:
    java.lang.NoSuchMethodError: org.apache.commons.codec.binary.Base64.encodeBase64URLSafeString
    上網瞭解了一下情況知道這個錯誤發生的一般場景是這樣的:A jar包中有需要引用B jar包的某個類,但是B jar包這個類在之前的代碼中已經被引用了,在maven依賴中已經配置完了,引用時的版本較低,並沒有現在A jar要用的某個方法,編譯是能通過的,A jar自然的去調用這個類中的相關方法,因爲版本低的原因,沒有找到,所以就拋出了NoSuchMethodError的錯誤。
  • 瞭解可能發生的原因後,在項目的maven-dependencies裏找到這個jar包,然後按報錯的包路徑去找這個類,發現這個類的確沒有這個方法。於是去maven倉庫看這個包已經更新到1.12了,於是在pom.xml配置了最新版本的依賴,問題解決。
<dependency>
			<groupId>commons-codec</groupId>
			<artifactId>commons-codec</artifactId>
			<version>1.8</version>
		</dependency>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章