1

我正在尝试做一些非常简单的事情:从 Maven 运行 Ant 任务。万无一失,对吧?错误的。

这是我的pom:

<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" 
        xmlns="http://maven.apache.org/POM/4.0.0"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

    <modelVersion>4.0.0</modelVersion>
    <parent>
        <artifactId>sampleproject-app</artifactId>
        <groupId>org.sampleproject</groupId>
        <version>0.0.1-SNAPSHOT</version>
    </parent>

    <groupId>org.sampleproject</groupId>
    <artifactId>patient-labs-module</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>swf</packaging>
    <name>Sample Project Patient Labs Module</name>

    <properties>
        <flex.sdk.version>4.1.0.16248</flex.sdk.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>com.adobe.flex.framework</groupId>
            <artifactId>flex-framework</artifactId>
            <version>${flex.sdk.version}</version>
            <type>pom</type>
            <exclusions>
                <exclusion>
                    <groupId>com.adobe.flex.framework</groupId>
                    <artifactId>playerglobal</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>com.adobe.flexunit</groupId>
            <artifactId>flexunit</artifactId>
            <version>4.0-rc-1</version>
            <type>swc</type>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>com.adobe.flex.framework</groupId>
            <artifactId>playerglobal</artifactId>
            <version>${flex.sdk.version}</version>
            <classifier>10.1</classifier>
            <type>swc</type>
        </dependency>
    </dependencies>

    <build>
        <sourceDirectory>${basedir}/main/flex</sourceDirectory>
        <testSourceDirectory>${basedir}/test/flex</testSourceDirectory>

        <resources>
            <resource>
                <directory>${basedir}/main/resources</directory>
            </resource>
        </resources>

        <testResources>
            <testResource>
                <directory>${basedir}/test/resources</directory>
            </testResource>
        </testResources>

        <plugins>
            <plugin>
                <groupId>org.sonatype.flexmojos</groupId>
                <artifactId>flexmojos-maven-plugin</artifactId>
                <version>3.8</version>
                <extensions>true</extensions>
                <dependencies>
                    <dependency>
                        <groupId>com.adobe.flex</groupId>
                        <artifactId>compiler</artifactId>
                        <version>${flex.sdk.version}</version>
                        <type>pom</type>
                    </dependency>
                </dependencies>
                <configuration>
                    <sourceFile>application.mxml</sourceFile>
                    <targetPlayer>10.1</targetPlayer>
                </configuration>
            </plugin>
            <plugin>
                <artifactId>maven-antrun-plugin</artifactId>
                <executions>
                    <execution>
                        <phase>install</phase>
                        <configuration>
                            <tasks>
                                <mkdir dir="/var/www/sampleproject/patientlabs"/>
                                <copy todir="/var/www/sampleproject/patientlabs">
                                    <fileset file="${project.build.directory}/${project.build.finalName}.${project.packaging}"/>
                                    <fileset dir="main/resources" includes="**/*"/>
                                </copy>
                            </tasks>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
</project>

我究竟做错了什么?当我运行mvn install时,Ant 目标永远不会被执行。有一个更好的方法吗?我只需将资源目录和主 swf 中的某些文件复制到本地目录,这样我就可以在本地 HTTP 服务器上对其进行测试。

4

1 回答 1

3

如果您查看 maven-antrun-plugin 的使用站点,您会看到插件配置中还指定了一个目标

        <goals>
          <goal>run</goal>
        </goals>

我想你必须添加这个。

于 2011-02-14T21:24:08.493 回答