2008-09-28 28 views

回答

2

当一个插件声明一个新的打包类型,如'aswf'时,你需要声明它为扩展。在您的顶级pom中,将扩展元素添加到插件配置中。

<plugin> 
    <groupId>...</groupId> 
    <artifactId>...</artifactId> 
    <extensions>true</extensions> 
... 
</plugin> 
1

我一直在寻找这个问题的答案。有几个网站已经证明有帮助,但我还没有完整的解决方案。

检查这些可能的线索:

AS的包装类型,大部分我所查到的资料显示,而不是使用aswf作为包类型,您需要使用swf,然后通过创建一个可调用税来调用adt.jar,将编译后的swf转换为您的air可执行文件。上面的链接将告诉您如何做到这一点。

至于你找到的空中超级pom,我认为有几个不同的......但是要使用任何超级pom,你需要让你的flex maven项目声明super pom作为父级,与此类似:

<parent> 
    <groupId>org.sonatype.flexmojos</groupId> 
    <artifactId>flexmojos-air-super-pom</artifactId> 
    <version>3.1-SNAPSHOT</version> 
</parent> 

不过只是延长了父POM可能不足以让您的SWF建筑 - 再次,见上面这个问题的更详细的治疗环节。

-2

在我的情况下,我只是使用 org.graniteds.archetypes graniteds-tide-seam-jpa-hibernate原型创建了一个新的maven项目,并且得到了这个错误。我对flex没有任何了解,但只是希望使用Seam的示例项目。这似乎是一个很好的候选人。但我得到

未知包装类型:SWF

即使 的<扩展>真正<扩展>出现在生成的POM文件的插件definintion。

我在其他地方读过,这需要一个测试版的maven。为什么heat是sonatype允许取决于他们的资源库中的测试版maven的原型?

+0

我看不出这是一个答案,原来的问题... – elevine 2011-10-23 18:27:50

0

我创建了一个AIR Maven模板,您可以在此github项目中找到详细信息:https://github.com/branscha/tmplt-airapp。这个问题很老旧,所以我的解决方案中的版本/框架可能不再适合你。在过去的几年中,Flex/Air的情况发生了很大变化。我的解决方案的

特点:

  1. 我使用Maven化Apache的SDK(13.0),你应该做同样的事情 为您的项目是独立于外部的Maven仓库 的。简化SDK的过程并不困难。
  2. Flexmojos 6.0.1
  3. 你好世界的应用程序可以变成Android的 应用程序。
  4. 包装是“空气”(即上面所提到的ISO aswf)