8

有人用 Maven 成功构建了 Adob​​e Air 应用程序吗?如果是这样,让它工作的步骤是什么?

我一直在尝试使用flex-mojos来构建一个 Air 应用程序。当我按照DashboardSamplePom中的建议将包装类型设置为“aswf”时,Maven 抱怨 aswf 是未知的包装类型。我还找到了他们的air-super-pom,但不知道如何将其引用为我的 POM 的父级。

4

5 回答 5

2

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

<plugin>
  <groupId>...</groupId>
  <artifactId>...</artifactId>
  <extensions>true</extensions>
...
</plugin>
于 2008-09-28T20:38:33.217 回答
2

mojos 网站 wiki 上有一篇名为Building an AIR Application的文章。它应该能够帮助你。

于 2009-08-20T20:51:25.977 回答
1

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

检查这些是否有可能的线索:

至于打包类型,我发现的大多数信息表明,您需要使用 swf,然后通过创建 exec tax 来调用 adt 将编译后的 swf 转换为您的 air 可执行文件,而不是使用 aswf 作为包类型.jar 上面的链接将向您展示如何做到这一点。

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

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

然而,仅仅扩展父 pom 可能不足以构建您的 swf - 再次,请参阅上面的链接以更详细地处理此问题。

于 2009-03-26T01:18:49.300 回答
0

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

我的解决方案的特点:

  1. 我使用 Mavenized Apache SDK (13.0),您可能应该为您的项目做同样的事情以独立于外部 Maven 存储库。mavenize SDK 的过程并不太难。
  2. Flexmojos 6.0.1
  3. hello-world 应用程序可以变成安卓应用程序。
  4. 包装是“空气”(上面提到的iso aswf)
于 2014-12-14T10:23:27.707 回答
-2

在我的例子中,我只是使用 org.graniteds.archetypes graniteds-tide-seam-jpa-hibernate 原型创建了一个新的 maven 项目并得到了这个错误。我对 flex 一无所知,只是想要一个使用 Seam 的示例项目。这似乎是一个不错的候选人。但我明白了

未知包装类型:swf

即使 <extensions>true<extensions> 存在于生成的 POM 文件的插件定义中。

我在其他地方读到这需要 Maven 的 beta 版本。为什么 sonatype 允许在其存储库中依赖于 maven Beta 版本的原型?

于 2011-10-22T22:53:39.617 回答