【发布时间】:2011-08-17 05:11:51
【问题描述】:
我正在尝试使用复制将依赖的 rsls 复制到战争中- 弹性资源插件。但是我收到以下错误:
[错误] 无法执行目标 org.sonatype.flexmojos:flexmojos-maven- plugin:3.8:copy-flex-resources (copy-flex-resources) 项目 smh: 找不到 com.adobe.flex.fram textLayout:swz:4.1.0.16076 in https://repository.sonatype.org/content/groups/flexgroup 已缓存在本地存储库中,不会重新尝试解析 直到更新 sonatype-flex-repository 的 val 已过或强制更新 ………… [错误] 然后,使用以下命令安装它: [错误] mvn install:install-file -DgroupId=com.adobe.flex.framework - DartifactId=textLayout -Dversion=4.1.0.16076 -Dpackaging=swz -Dfile=/ 路径/到/文件
我已经浏览了链接 http://groups.google.com/group/flex-mojos/browse_thread/thread/6f47b2980275aaeb http://groups.google.com/group/flex-mojos/browse_thread/thread/2aa96d8d69e1ddb5 https://repository.sonatype.org/content/sites/maven-sites/flexmojos/3.8/copy-flex-resources-mojo.html
我已按照中指定的 pom 列表进行操作 https://docs.sonatype.org/pages/viewpage.action?pageId=7045277
为解决上述问题,我将 swz 文件安装到本地 存储库使用 mvn install:install-file -DgroupId=com.adobe.flex.framework - DartifactId=textLayout -Dversion=4.1.0.16076 -Dpackaging=swz - Dfile=textLayout_1.1.0.604.swz (这样做的副作用是这覆盖了现有的 pom 配置 存储库)
然后运行 mvn compile。我收到以下错误
[错误] 无法执行目标 org.sonatype.flexmojos:flexmojos-maven- plugin:3.8:copy-flex-resources (copy-flex-resources) 项目 smh: 复制 C:\Users\bharadke.m2\repository\com\adobe\flex 失败 \framework\textLayout\4.1.0.16076\textLayout-4.1.0.16076.swz: 文件名、目录名或卷标语法不正确 -> [帮助 1]
下面是我的 pom.xml sn-ps 1.弹性项目pom:
<build>
<sourceDirectory>src/main/flex</sourceDirectory>
<testSourceDirectory>src/test/flex</testSourceDirectory>
<plugins>
<plugin>
<groupId>org.sonatype.flexmojos</groupId>
<artifactId>flexmojos-maven-plugin</artifactId>
<version>${flex-mojos-plugin.version}</version>
<extensions>true</extensions>
<executions>
</executions>
<dependencies>
<dependency>
<groupId>com.adobe.flex</groupId>
<artifactId>compiler</artifactId>
<version>${flex.sdk.version}</version>
<type>pom</type>
</dependency>
</dependencies>
<configuration>
<policyFileUrls>
<url>http://fpdownload.adobe.com/pub/swz/crossdomain.xml</url>
<url>http://fpdownload.adobe.com/pub/swz/crossdomain.xml</url>
</policyFileUrls>
<rslUrls>
<url>http://fpdownload.adobe.com/pub/swz/flex/$
{flex.sdk.version}/{artifactId}_{version}.{extension}</url>
<url>http://fpdownload.adobe.com/pub/swz/tlf/1.1.0.604/
{artifactId}_1.1.0.604.{extension}</url>
</rslUrls>
<keepAllTypeSelectors>true</keepAllTypeSelectors>
<contextRoot>/abc</contextRoot>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<!-- Dynamically load the Adobe signed RSL framework instead of merging into SWF. -->
<dependency>
<groupId>com.adobe.flex.framework</groupId>
<artifactId>textLayout</artifactId>
<version>${flex.sdk.version}</version>
<type>swc</type>
<scope>caching</scope>
</dependency>
<!-- OSMF SWC would go here. -->
<dependency>
<groupId>com.adobe.flex.framework</groupId>
<artifactId>framework</artifactId>
<version>${flex.sdk.version}</version>
<type>swc</type>
<scope>caching</scope>
</dependency>
<dependency>
<groupId>com.adobe.flex.framework</groupId>
<artifactId>spark</artifactId>
<version>${flex.sdk.version}</version>
<type>swc</type>
<scope>caching</scope>
</dependency>
<dependency>
<groupId>com.adobe.flex.framework</groupId>
<artifactId>sparkskins</artifactId>
<version>${flex.sdk.version}</version>
<type>swc</type>
<scope>caching</scope>
</dependency>
<dependency>
<groupId>com.adobe.flex.framework</groupId>
<artifactId>rpc</artifactId>
<version>${flex.sdk.version}</version>
<type>swc</type>
<scope>caching</scope>
</dependency>
<dependency>
<groupId>com.adobe.flex.framework</groupId>
<artifactId>datavisualization</artifactId>
<version>${flex.sdk.version}</version>
<type>swc</type>
<scope>caching</scope>
</dependency>
<!-- Flex framework resource bundles -->
<dependency>
<groupId>com.adobe.flex.framework</groupId>
<artifactId>flex-framework</artifactId>
<version>${flex.sdk.version}</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>org.puremvc.pipes</groupId>
<artifactId>Utility_AS3_MultiCore_Pipes</artifactId>
<version>1.1</version>
<type>swc</type>
<scope>rsl</scope>
</dependency>
<dependency>
<groupId>org.puremvc.multicore</groupId>
<artifactId>PureMVC_AS3_MultiCore</artifactId>
<version>1.0.5</version>
<type>swc</type>
<scope>rsl</scope>
</dependency>
2. web-application pom :
<build>
<finalName>foo</finalName>
<plugins>
<plugin>
<groupId>org.sonatype.flexmojos</groupId>
<artifactId>flexmojos-maven-plugin</artifactId>
<version>${flex-mojos-plugin.version}</version>
<extensions>true</extensions>
<executions>
<execution>
<phase>compile</phase>
<id>copy-flex-resources</id>
<goals>
<goal>copy-flex-resources</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>com.adobe.flex</groupId>
<artifactId>compiler</artifactId>
<version>${flex.sdk.version}</version>
<type>pom</type>
</dependency>
</dependencies>
<configuration>
<stripVersion>true</stripVersion>
<copyRSL>true</copyRSL>
</configuration>
</plugin>
</plugins>
</build>
我已经解决了这个问题,但找不到解决方案。 非常感谢任何帮助
更新 1: @J_A_X,我不知何故让它与 4.0-RC1 的组合一起工作并更正了 pom。但是还有另一个问题。 我添加的自定义依赖项像
<dependency>
<groupId>org.puremvc.pipes</groupId>
<artifactId>Utility_AS3_MultiCore_Pipes</artifactId>
<version>1.1</version>
<type>swc</type>
<scope>rsl</scope>
</dependency>
<dependency>
<groupId>org.puremvc.multicore</groupId>
<artifactId>PureMVC_AS3_MultiCore</artifactId>
<version>1.0.5</version>
<type>swc</type>
<scope>rsl</scope>
</dependency>
没有被复制。出现以下错误
[错误] 无法在项目 smh 上执行目标 org.sonatype.flexmojos:flexmojos-maven-plugin:4.0-RC1:copy-flex-resources (copy-flex-resources):执行目标的 copy-flex-resources org.sonatype.flexmojos:flexmojos-maven-plugin:4.0-RC1:copy-flex-resources failed: 无法解析工件 com.hp.ci:ci-ui-lib:swf:0.0.1-SNAPSHOT -> [帮助1]
我相信 flex-mojos 插件 shud 会自动从相应的 swc 中提取 swf 并复制到目的地,而不是我们安装到存储库中。我说的对吗?
【问题讨论】:
-
尝试使用来自repository.sonatype.org/content/repositories/maven-sites/… 的 FlexMojos-4.0RC1。 3.8 比较老了。另外,发布更多你的 pom 文件。
-
编辑了帖子以将 pom 编码为更好的可见性..
-
@J_A_X 我也尝试使用 4.0RC1 但同样的问题 [错误] 无法执行目标 org.sonatype.flexmojos:flexmojos-maven-plugin:4.0-RC1:copy-flex-resources (copy -flex-resources)在项目 smh 上:无法复制 C:\Users\bharadke\.m2\repository\com\adobe\flex\framework\textLayout\4.1.0.16076\textLayout-4.1.0.16076.swz:文件名、目录名称或卷标语法不正确 -> [帮助 1]
-
等等,我不明白。如果您的 RSL 指向 adobe 签名的,您为什么要尝试将 RSL 复制到您的包中?不需要。
-
我需要将它复制到我的包中,因为该应用程序也是为非互联网用例设计的。所以,我需要指定一个故障转移 rsl 路径。因此需要这些 rsl。
标签: apache-flex maven rsl flexmojos