gmaven-plugin执行目标中的错误(使用groovy)

时间:2016-05-25 01:39:11

标签: maven groovy git-log gmaven-plugin gmaven

我尝试在构建时使用gmaven-plugin设置系统属性。

但是在linux和窗口构建环境中属性结果不同。

在linux环境中,它有双引号字符串。但窗口不是。

为什么结果不同?你能回答我吗?

build result
linux : ### commitId : "8def4294ccb346795bd9682b5bcb9174bc64d78f"
window : ### commitId : 8def4294ccb346795bd9682b5bcb9174bc64d78f 

POM:

<plugin>
    <groupId>org.codehaus.gmaven</groupId>
    <artifactId>gmaven-plugin</artifactId>
    <version>1.5</version>
    <executions>
        <execution>
            <phase>initialize</phase>
            <goals>
                <goal>execute</goal>
            </goals>
            <configuration>
                <properties>
                    <script>git log -n1 --pretty=format:"%H" web/</script>
                </properties>
                <source>
                    def command = project.properties.script
                    def process = command.execute()
                    process.waitFor()
                    project.properties.setProperty('commitId', process.in.text.trim())
                    println '### commitId : ' + project.properties.commitId
                </source>
            </configuration>
        </execution>
    </executions>
</plugin>

1 个答案:

答案 0 :(得分:-1)

groovy脚本有问题。

所以需要像这样拆分参数。

def a = [&#39; git&#39;,&#39; log&#39;,&#34; -n1&#34; ,&#34; - 漂亮=格式:%H&#34;,&#39; web /&#39;]。执行()。text.trim()