我的项目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`](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`](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.` 不太确定为什么它将编译器版本称为'3.2.0.3958‘,尽管我已经定义了与"flex.sdk.version“相同的编译器版本。我的插件看起来像
<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>有人能帮上忙吗?
发布于 2010-06-26 05:34:22
尝尝这个
<?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-26 11:04:32
好吧,我花了大半天的时间试着弄明白同样的事情。最后,我遇到了这样的情况:
由于flexmojos是一个扩展,它将在构建开始之前下载,以便将swc/swf打包支持分配到内存中。
我决定在这个项目中的其他事情(这是巨大的)是为flex4配置flexmojo (我试图构建一个旧的flex3模块),并且我正在获得这个在内存中配置的插件。因此,我找到了另一个构建正确的flex3组件,并更改了我的flexmojo版本以匹配那个组件。啊,真灵。maven必须为该插件的每个版本在内存中保留一个该插件的实例,这是有道理的。
因此,尝试更改您的flexmojo版本号(我从1.6.1更改为1.5.0)
谢谢
https://stackoverflow.com/questions/3121181
复制相似问题