java.lang.NoSuchFieldError錯誤

最近在開發niagara的海康攝像頭的module,開發環境是niagara3.7,運行環境是niagara3.8(也怪自己懶,沒有遷移)。編譯通過,生成了module,但是一運行就報“java.lang.NoSuchFieldError”錯誤,字面意思就是說VidFrame沒有rawData這個字段。

首先我通過反射打印出所有的屬性名,有這個屬性啊。又上網搜索,發現有人說可能是編譯環境和運行環境依賴的庫不一樣,趕緊查看。果然,找到問題了,3.8中VidFrame的rawData是javax.baja.nre.util.ByteBuffer類型,而3.7中則是javax.baja.io.ByteBuffer類型。

其實如果打印出所有屬性的類型,這個錯誤應該能更早發現的。

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