运行Maven目标时的Grails环境配置

时间:2012-05-14 10:49:30

标签: grails maven build grails-maven

我正在尝试使用Mavan和maven-grails-plugin构建我的grails项目。

我的pom.xml文件中的插件配置如下所示:

<plugin>
    <groupId>org.grails</groupId>
    <artifactId>grails-maven-plugin</artifactId>
    <version>${grails.version}</version>
    <extensions>true</extensions>
    <executions>
      <execution>
        <goals>
          <goal>init</goal>
          <goal>maven-clean</goal>
          <goal>validate</goal>
          <goal>config-directories</goal>
          <goal>maven-compile</goal>
          <goal>maven-test</goal>
          <goal>maven-war</goal>
          <goal>maven-functional-test</goal>
        </goals>
        <configuration>
            <env>build</env>
        </configuration>
      </execution>
    </executions>
  </plugin>

我的DataSource.groovy配置如下所示:

environments {
development {
    dataSource {
        dbCreate = "update" // one of 'create', 'create-drop', 'update', 'validate', ''
        url = "jdbc:mysql://localhost/mydb?useUnicode=yes"
        username = "dev"
        password = "dev"
    }
    hibernate {
        show_sql = true
    }
}
build {
    dataSource {
        dbCreate = "update" // one of 'create', 'create-drop', 'update', 'validate', ''
        url = "jdbc:mysql://localhost/mydb?useUnicode=yes"
        username = "remote"
        password = "remote"
    }
}

问题在于,当我运行mvn clean package时,它尝试使用开发环境设置而不是构建环境设置连接到数据库。

正如您所见,我已尝试使用元素中的标记指定构建环境。根据这个问题 - &gt; Maven Grails Plugin Environment

有谁知道如何使用构建环境设置而不是开发环境设置?

提前致谢

2 个答案:

答案 0 :(得分:1)

调用maven时添加-Dgrails.env=build命令行参数。

答案 1 :(得分:0)

不知道该插件的版本。 也许是

<grailsEnv>build</grailsEnv>

是一个更好的配置属性?