私は、リソースファイル、特に電子メールテンプレートを含むライブラリを開発しています。ファイルは<project_root>/templates/email.html
です。ゴランでリソースを配布する
.go
ソースからこのファイルを参照するのは苦労しています。相対パスを解決するのは難しいためです。これまでのところ私が見つけたオプションは次のとおりです。
使用
$GOPATH
:これはいくつかの依存関係managementeツールは$GOPATH
を再定義し、カスタムのenv変数を使用を壊す可能性がある問題が付属しています。作品が、それはユーザーを強制的に変数を追加するためのlibの値。
文字列のテンプレート:それは醜いです。
もっと良い選択肢がありますか?私はむしろこれのためにサードパーティ製のライブラリを使用したくないですが、もしあなたがそれを指摘する自由を感じているので、私はソースを読んで、彼らがそれをやる方法を見ることができます。
おかげ
は直接バイナリに電子メールテンプレートファイルを埋め込む考えてみましょう:[github.com/jteeuwen/go-bindata](https://github.com/jteeuwen/go-bindata) – Mark
インライン化のリソースを参照してくださいすることは私見ですGoライブラリを開発するときには最良の方法です。このように、リソースは完全に透過的です。テンプレートをバイナリに埋め込むことは、あなたのライブラリを使用する人に直接影響を与え、コンパイルする必要があります。 – jnmoal