質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Go

Go(golang)は、Googleで開発されたオープンソースのプログラミング言語です。

Gradle

Gradleは、ビルド自動化ツールです。 ソフトウェアパッケージやドキュメント、 または実際に何か他の種類のプロジェクトの構築、テスト、公開、展開などを自動化が出来ます

Q&A

1回答

924閲覧

Go言語でGradleのビルドのような外出しした外部ファイルを規定のフォルダにコピーしてビルド後のコンパイルファイルをまとめる方法はないですか?

satarutann

総合スコア8

Go

Go(golang)は、Googleで開発されたオープンソースのプログラミング言語です。

Gradle

Gradleは、ビルド自動化ツールです。 ソフトウェアパッケージやドキュメント、 または実際に何か他の種類のプロジェクトの構築、テスト、公開、展開などを自動化が出来ます

0グッド

1クリップ

投稿2018/04/15 15:28

前提・実現したいこと

JavaのGradleを用いるとビルドした際に設定ファイルなどをビルド用フォルダのConfigフォルダにコピーして、生成したJarファイルを出力後、Jar実行のみでConfigや依存関係のあるJarやファイルから読み取れたりします。
この機能をGolangで実現は可能でしょうか?

ここで言う実現とは何らかのパッケージを読み取るまたはツールを用いることで実現できませんか?というのを教えていただきたいです。
自動ビルドをする上でこういうプログラムを自分で作成すれば可能などは別の問題とさせてください。

ビルドした結果全ての構成をbuildフォルダへ出力を行えたらと思っております。

発生している問題

現状の環境にてbuildを行うとメインとするファイルが生成されます。
異なる階層に保存したConfigファイルのアクセスが行えませんでした。

試したこと

depを使用した場合と使用しない場合でソースを書き、ビルドした結果ファイル出力が行えました。
EXEファイルを想定する階層に移動後実行することでConfigファイルへのアクセスが行えています。

補足情報(FW/ツールのバージョンなど)

Golang1.10
Visual Studio Codeの1.22.1
上記環境で実施

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

少しだけ質問内容とはずれた回答かもしれませんが。以下のリンク先のパッケージのどれかを使うことで、実行ファイルにリソース(設定ファイルなど)を埋め込むことはできます。

https://github.com/avelino/awesome-go/blob/master/README.md#resource-embedding

つまり、実行ファイルだけを持っていけば、別の環境でも(埋め込んだ設定ファイルを見て)動作するという状況は作れます(ただし埋め込んだ設定ファイルの中身を変えるには再度ビルドし直す必要がありますが)。

投稿2018/05/02 17:46

編集2018/05/02 17:49
podhmo

総合スコア29

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

satarutann

2018/05/04 16:14

回答有り難うございます。 ビルド時にバッチに設定ファイルごと内包する方法は一度は考えましたが、現状行いたいこととは異なります。 ご回答の通り、設定ファイルを内包すると変更したい場合再ビルドが必要となります。 最良なのはやはり、設定は外出でプログラムだけKILLと実行で反映できる形が一番好ましいと思っております。 そう考えるとビルド後ファイルの配置し直しなどが面倒に感じますので、その部分を解決できればと思い質問させていただきました。 (再ビルドにさえ気にしなければ確かにバッチ1つにまとめると運用や配布は楽ですが、機能が増えた場合など1バッチあたりの容量も気になっております。)
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問