为什么build-helper-maven-plugin不会将属性传递给javafx-maven-plugin?

时间:2016-10-19 08:11:33

标签: maven javafx properties native build-helper-maven-plugin

我目前正在尝试部署javafx本机包。虽然这基本上可以正常工作,但它不会使用build-helper-maven-plugin及其正则表达式属性目标部署到由<nativeOutputDir>给定的任何位置。

这是我的pom:

<build>
<plugins>
    <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>build-helper-maven-plugin</artifactId>
        <executions>
            <execution>
                <id>regex-property</id>
                <goals>
                    <goal>regex-property</goal>
                </goals>
                <configuration>
                            <name>replaced.deploydir</name>
                            <value>${project.version}</value>
                            <regex>.+SNAPSHOT</regex>
                            <replacement>C:\\\\temp\\\\snapDir</replacement>
                            <failIfNoMatch>true</failIfNoMatch>
                            <failOnError>true</failOnError>
                </configuration>
            </execution>
        </executions>
    </plugin>
    <plugin>
        <groupId>com.zenjava</groupId>
        <artifactId>javafx-maven-plugin</artifactId>
        <configuration>
            <mainClass>foo.bar.StartApp</mainClass>
            <nativeOutputDir>${replaced.deployDir}</nativeOutputDir>
            <nativeReleaseVersion>1.1.0</nativeReleaseVersion>
            <updateExistingJar>true</updateExistingJar>
            <additionalAppResources>${basedir}/target/extra-resources</additionalAppResources>
            <appName>InstructionGen</appName>
        </configuration>
    </plugin>
</plugins>
</build>

现在,当我使用mavens property-tag传递属性时,nativeInstaller将被部署到正确的位置。

虽然这可能与[问题]相关:( Maven build-helper-maven-plugin regex unable to use property as dependency.version)。 在我看来,这个问题不支持答案。 替换发生的阶段是“验证”,而javafx-maven-plugin构建捆绑包的阶段是“包”,因此顺序应该是正确的。 我使用antrun-plugin进行测试,以查看属性是否完全创建,并且确实如此。 有趣的事实:当我在${replaced.deployDir} <nativeOutputDir>之后添加某些内容时,<nativeOutputDir>${replaced.deployDir}\\test</nativeOutputDir>会将projectname\target\${replaced.deployDir}\test部署到${replaced.deployDir}创建未解析的// Json in string format var jsonString = '[{"id":"1", "gdate":"2016-10-13"},{"id":"2", "gdate":"2016-10-13"},{"id":"3", "gdate":"2016-10-13"},{"id":"4", "gdate":"2016-10-13"},{"id":"5", "gdate":"2016-10-13"},{"id":"6", "gdate":"2016-10-13"}]'; // Convert string to json object var json = JSON.parse(jsonString); // Iterate over json object jQuery.each(json, function(index, value) { console.log(index, value); }); // Simple access to attribute in json object console.log('json[1][\'id\'] = ', json[1]['id']);文件夹。

感谢任何帮助。

0 个答案:

没有答案