前言
這是在使用 rapidjson 無法正常運作的解決辦法,出現以下的訊息
/opt/work/lib/rapidjson/document.h:885: rapidjson::GenericValue<Encoding, Allocator>::ConstMemberIterator rapidjson::GenericValue<Encoding, Allocator>::MemberEnd() const [with Encoding = rapidjson::UTF8<>; Allocator = rapidjson::MemoryPoolAllocator<>; rapidjson::GenericValue<Encoding, Allocator>::ConstMemberIterator = rapidjson::GenericMemberIterator<true, rapidjson::UTF8<>, rapidjson::MemoryPoolAllocator<> >]: Assertion `IsObject()' failed.
解決方法
step1. 檢查 json 格式
碰到這個問題的時候,
第一點我想到的是先去確認 json 格式有沒有錯誤,
結果發現沒有!!!
step2. 無法取得正確的資料夾路徑
後來發現,因為我使用 docker container 作為開發環境,
在修改資料夾的過程中,把 mount 資料夾進行了刪除的動作,
因此,在 container 中的 docker 無法正確讀取資料夾。
我將 docker stop 並重新 start 後,
讓 mount 資料夾路徑可以被重新取得,問題解決!