その後、V4がリリースされているので最新版のEchoでは本記事の問題は解決しているかもしれません。(未確認)
GAE/GoにEchoを導入しようとしてハマった件について。
結局、最新バージョンのEchoV3(2018/3/20当時の最新)はGAE環境で動かせませんでした…
妥協してV2では動かすことが出来たので、同じ様にハマっている方の参考になればと記事にしてみます。
スポンサーリンク
EchoのバージョンV3だと動かない?
最新のEchoのV3でセットアップを始めました。
公式のマニュアルを参考にセットアップを行いました。
公式マニュアル
ですが、下記のようなエラーが。
GAEでは、unsafeパッケージをインポートしちゃダメってことのようですが、Echoが参照しているライブラリでインポートしているんですよね。
色々試してみましたが、解決せず。
諦めて、情報が豊富なV2で試してみることに。
EchoのV2でセットアップ
V2だと無事にセットアップ出来ました!
下記のQiitaの記事の通りに進めれば無事にセットアップ出来ます。
Go製のフレームワークechoを使ってJSONを返すWebサーバーを作り、GoogleAppEngineで動かす
補足するとしたら、Echoのバージョンの切替方法でしょうか。
バージョンの切り替えは、go getでEchoを取得しているとGitリポジトリになっているので、Gitの操作でバージョンを切り替える事ができます。
Echoのディレクトリで、下記のコマンドでV2のブランチに切り替え。
依存関係でエラーが出るので、下記のモジュールをクローンします。
これで無事に動きました。
まとめ:本当はV3が使いたい
一応動くようにはなりましたが、バージョンを下げて対応という結果でした。
これって、V3の開発が進めば解決するんですかね?
もしくは、単なる僕のミスでV3でもちゃんとセットアップ出来たりして…
GAE/Go/EchoV3でセットアップ出来た方がいれば教えていただきたいです。
追記
kashitakaさんよりコメントを頂きました、別のフレームワークのGinを使うという選択肢もありですね!
無理してEchoの古いバージョンを使うよりGinの最新版を使った方が良さそうです。
kashitakaさん、貴重な情報ありがとうございました!
その後、V4がリリースされているので最新版のEchoでは本記事の問題は解決しているかもしれません。(未確認)