2017-05-05 8 views
0

私はメールを送信するためにgo-mailを使用しています。私はそれがうまく動作してmain.go.作品 go-mail埋め込みイメージがexeで動作しない

によって m.Embed(「共通/静的/ IMG/logo.png」) とHTMLでこれを使うことで、メール に画像が埋め込まれています しかし、私がプロジェクトを実行してmain.exeを実行すると、 "システムが指定されたパスを見つけることができませんでした"というエラーが表示されます。

+2

実行ファイルを実行するときにどのディレクトリにいますか?それはあなたがどこにいても相対的なイメージを探しています。 – captncraig

+0

このhttps://github.com/jteeuwen/go-bindataを使用 –

+0

私は実行可能ファイルをデスクトップにコピーして実行しようとしました。静的なファイルもコピーする必要がありますか?実行可能ファイルに静的ファイルをパッケージ化することは可能ですか? –

答えて

0

ここには複数の問題がある可能性があります。

1つは、使用したファイルパスにプラットフォーム固有のパス区切り文字が含まれていることです。 Windowsは "/"の代わりに "¥"を使用します。プラットフォームに依存しないパスを書き込むには、他の問題https://godoc.org/path/filepath#Join

filepath.Join("common", "static", "img", "logo.png") 

を使用Yandryポゾが指摘したように、あなたはlogo.pngファイルをパッケージ化し、あなたのコードでそれを配布していない可能性がありますということです。その場合は、https://github.com/jteeuwen/go-bindataのようなものが役立つかもしれません。

関連する問題