LoginSignup
4
3

More than 5 years have passed since last update.

[Grails]実行時の環境を切り替える。

Posted at

参考

Grailsでは開発環境、テスト環境、本番環境で利用するデータベースを切り替えるなど、実行環境によって読み込むデータなどを変更出来ます。
Grailsはデフォルトで dev , test , prod という環境が用意されています。

Grailsに環境を渡すには以下の3つの方法が有ります。
1. grailsコマンドでインタラクティブモードに入る際に環境を指定する。
2.grailsコマンドでGrailsを起動する際に環境を指定する。
3. インタラクティブモード時にコマンドの先頭に環境を指定する。

独自の環境をGrailsに渡す事も出来ますが、上記の1番と2番の方法でないとGrailsに正しく環境を渡す事が出来ません。

1番の場合だと以下のようになります。
grails -Dgrails.env=koji

テストとして以下のようなBootstrap.groovyを記述します。

Bootstrap.groovy
class BootStrap {

    def init = { servletContext ->

        environments {
            development {
                println "development!"
            }

            test {
                println "test!"
            }
            production {
                println "production!"
            }

            koji {
                println "koji!"
            }
        }
    }
    def destroy = {
    }
}

この状態でgrails -Dgrails.env=kojiを実行してインタラクティブモードに入ってから、run-appでGrailsを起動すると、 koji! と表示されます。

デフォルトの環境の場合、Grailsに渡す環境とソースで記述する各環境に対応した記述が異なります。

渡す環境 ソース上の記述 メモ
dev development デフォルト。指定しない場合はこれになる
test test テスト用
prod production 本番環境用
4
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
3