如何使用dart-maven-plugin构建dart项目?

时间:2015-06-18 18:40:12

标签: java maven web plugins dart

我需要使用Maven构建我的Dart项目。

我已经为此目标找到了dart-maven-plugin,它可以很好地解决依赖关系。

在Dart中,我用两个命令编译我的项目:

  1. pub get

  2. pub build

  3. 所以,当我写

    mvn dart:pub
    

    它获得所有依赖项。

    现在我需要构建我的项目。所以,我写了

    mvn dart:pub -DpubCommand=build
    

    但它仍然在解决依赖关系,它没有构建项目!

    如何使用dart-maven-plugin构建项目?

2 个答案:

答案 0 :(得分:1)

我写了错误的参数名称。正确的将是:

    mvn dart:pub -Ddart.pub.command=build

还有示例项目名称 - “dart-maven-plugin-example”
不要构建这个项目,它不会构建因为某些子项目中没有web文件夹 希望它能帮助其他人。

答案 1 :(得分:0)

如果你想这样做,你可以将这个ant插件添加到你的项目中:

<plugin>
    <artifactId>maven-antrun-plugin</artifactId>
    <executions>
        <execution>
            <phase>compile</phase>
            <configuration>
                <tasks>
                    <exec executable="cmd" osfamily="windows" dir="${project.basedir}/src/main/dart/home">
                        <arg value="/c"/>
                        <arg value="pub.bat"/>
                        <arg value="build"/>
                    </exec>
                    <exec executable="/bin/sh" osfamily="mac" dir="${project.basedir}/src/main/dart/pegboard">
                        <arg value="-c"/>
                        <arg value="pub build --mode=debug"/>
                    </exec>
                    <copy todir="${project.build.directory}/classes/static">
                        <fileset dir="${project.basedir}/src/main/dart/your-dart-project-name/build/web">
                            <include name="*/**"/>
                        </fileset>
                    </copy>
                </tasks>
            </configuration>
            <goals>
                <goal>run</goal>
            </goals>
        </execution>
    </executions>
</plugin>

这两个ant任务将运行'pub build',然后将您的构建文件复制到approriate目录。这里设置的是一个弹簧启动应用程序,它从静态文件夹中提供文件。您可以更改文件的位置。用您的dart项目名称替换'your-dart-project-name'。 '* / **'是一个蚂蚁匹配器,它将递归匹配所有文件。

exec命令要求您已将dart-sdk'bin'文件夹添加到类路径中。这将使pub成为可执行文件。