0

私のプロジェクトの UI は Flex4.1 を使用して構築されています。私は maven2 を使用しており、コンパイルに使用する必要がある flex-mojo のバージョンを見つけようとしています。

私は以下で試しました、

<flex.sdk.version>4.1.0.16076</flex.sdk.version>
<flex.mojo.version>3.6.1</flex.mojo.version>

しかし、問題が発生しています..

[INFO] Flex compiler and flex framework versions doesn't match. Compiler: '3.2.0.3958' - Framework: '4.1.0.16076'. You can use 'ignoreVersionIssues' to disable this check. Please refer to Flexmojos maven doc. If you prefer fixing it instead of ignoring, take a look at: https://docs.sonatype.org/display/FLEXMOJOS/How+to+set+Flex+SDK+version [INFO] ------------------------------------------------------------------------ [INFO] Trace org.apache.maven.BuildFailureException: Flex compiler and flex framework versions doesn't match. Compiler: '3.2.0.3958' - Framework: '4.1.0.16076'. You can use 'ignoreVersionIssues' to disable this check. Please refer to Flexmojos maven doc. If you prefer fixing it instead of ignoring, take a look at: https://docs.sonatype.org/display/FLEXMOJOS/How+to+set+Flex+SDK+version at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:699) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:540) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:519) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:371) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:332) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:181) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:356) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:137) at org.apache.maven.cli.MavenCli.main(MavenCli.java:356) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) at org.codehaus.classworlds.Launcher.main(Launcher.java:375) Caused by: org.apache.maven.plugin.MojoFailureException: Flex compiler and flex framework versions doesn't match. Compiler: '3.2.0.3958' - Framework: '4.1.0.16076'. You can use 'ignoreVersionIssues' to disable this check. Please refer to Flexmojos maven doc.

「flex.sdk.version」と同じコンパイラ バージョンを定義したにもかかわらず、コンパイラ バージョンを「3.2.0.3958」と参照している理由がよくわかりません。私のプラグインは次のようになります

       <plugin>
            <groupId>org.sonatype.flexmojos</groupId>
            <artifactId>flexmojos-maven-plugin</artifactId>  
            <version>${flex.mojo.version}</version>  
            <extensions>true</extensions>
            <configuration>
                <!--
                <linkReport>true</linkReport>
                <configurationReport>true</configurationReport>
                -->
                <locales>
                    <param>en_US</param>
                </locales>
                <sourcePaths>
                    <path>${project.build.sourceDirectory}</path>
                </sourcePaths>
                <contextRoot>${project.parent.artifactId}</contextRoot>
                <showWarnings>false</showWarnings>
                <debug>true</debug>
                <keepGeneratedActionscript>false</keepGeneratedActionscript>
                <incremental>true</incremental>
                <!-- <ignoreVersionIssues>true</ignoreVersionIssues> -->
            </configuration>
            <dependencies>
                <dependency>
                    <groupId>com.adobe.flex</groupId>
                    <artifactId>compiler</artifactId>
                    <version>${flex.sdk.version}</version>
                    <type>pom</type>
                </dependency>
            </dependencies>
        </plugin>

誰か助けてくれませんか??

4

2 に答える 2

0

さて、私は同じことを理解しようとして一日の大半を費やしました. 最後に、私はこれに出くわしました:

flexmojos は拡張機能であるため、ビルド開始前にダウンロードされ、swc/swf パッケージ サポートがメモリに割り当てられます。

私は、プロジェクト内の他の何か (これは巨大です) が flex4 用に flexmojo を構成していると判断し (私は古い flex3 モジュールを構築しようとしていました)、このインメモリ構成プラグインを取得していました。そのため、正しくビルドされている別の flex3 コンポーネントを見つけ、それに合わせて flexmojo のバージョンを変更しました。出来た。そのプラグインのすべてのバージョンに対して、maven がプラグインのメモリ内インスタンスを保持する必要があることは理にかなっています。

したがって、flexmojo のバージョン番号を変更してみてください (1.6.1 から 1.5.0 に変更しました)。

ありがとう

于 2010-06-26T03:04:31.793 に答える
0

これを試して

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

<parent>
    <groupId>org.springframework.flex.samples</groupId>
    <artifactId>spring-flex-testdrive</artifactId>
    <version>1.0.3.RELEASE</version>
</parent>

<artifactId>collaboration</artifactId>
<packaging>swf</packaging>

<name>Collaboration Sample</name>

<build>
    <finalName>collaboration</finalName>
    <sourceDirectory>src/main/flex</sourceDirectory>
    <testSourceDirectory>src/test/flex</testSourceDirectory>
    <plugins>
        <plugin>
            <groupId>org.sonatype.flexmojos</groupId>
            <artifactId>flexmojos-maven-plugin</artifactId>
            <version>3.6.1</version>
            <extensions>true</extensions>
            <executions>
              <execution>
                <goals>
                  <goal>wrapper</goal>
                </goals>
              </execution>
            </executions>

            <configuration>
                <output>${basedir}/../testdrive/src/main/webapp/${project.build.finalName}/${project.build.finalName}.swf</output>
                <services>${basedir}/../testdrive/src/main/webapp/WEB-INF/flex/services-config.xml</services>
                <contextRoot>/testdrive</contextRoot>
                <locales>
                    <locale>en_US</locale>
                </locales>
                 <targetPlayer>10.0.0</targetPlayer> 
            </configuration>
            <dependencies>
                <dependency>
                    <groupId>com.adobe.flex</groupId>
                    <artifactId>compiler</artifactId>
                    <version>4.0.0.14159</version>
                    <type>pom</type>
                </dependency>
            </dependencies>

        </plugin>
    </plugins>
</build>

<dependencies>
    <dependency>
        <groupId>com.adobe.flex.framework</groupId>
        <artifactId>flex-framework</artifactId>
        <version>4.0.0.14159</version>
        <type>pom</type>
    </dependency>


    <!-- flexmojos Unit testing support -->
    <!--
        <dependency> <groupId>org.sonatype.flexmojos</groupId>
        <artifactId>flexmojos-unittest-support</artifactId>
        <version>3.2.0</version> <type>swc</type> <scope>test</scope>
        </dependency>
    -->
</dependencies>

 </project>
于 2010-06-25T21:34:21.680 に答える