我正在编写一个 Adob​​e AIR 应用程序,需要使用 Maven 和 Nexus 构建 CI。我试着跟随 本文 这是来自来源的最新文章,但我仍然不明白这些事情:

  1. 文章中的第一个和第二个 pom.xml 示例是否位于同一个 pom.xml 文件中?
  2. 如何获取 CI 上的 Flex SDK 依赖项?

如果有人有一个完整的项目设置并完成整个过程,那就太棒了。

有帮助吗?

解决方案

这个博客 有一些关于使用 Maven 2 构建 Air 应用程序的有用信息。

就您的编号问题而言

第1部分:教程中的两个 POM 是不同的。第一个创建包含应用程序组件的 swf 包。第二个 POM 依赖于 swf 包(请注意第二个 POM 中对第一个 POM 中的artifactId Air 的依赖关系)。第二个 POM 定义了解压 swf 包的处理(使用依赖插件),然后使用 exec 插件对解压的包内容调用 adt。

因此,所描述的过程分为两部分。第一个 POM 打包 swf 文件,以便它们在存储库中可用。第二个 POM 将从 Maven 存储库检索所需的任何包并调用 adt 来编译它们。因此,如果您有多个 Air 软件包,则可以修改第二个 POM 以下载额外的软件包并编译它们。

第2部分:您需要的大部分依赖项都托管在 Sonatype 公共存储库, ,一个值得注意的例外似乎是 adt.jar。您可以将 adt.jar 部署到 Maven 存储库管理器,例如 关系 使用部署插件的 部署文件 目标。

这会将 adt.jar 部署到存储库,并使用与教程匹配的凭据:

mvn deploy:deploy-file -Durl=http://path/to/repository -DrepositoryId=[some.id]
    -Dfile=adt.jar -DgroupId=com.adobe.flex.compiler -DartifactId=adt
    -Dversion=3.3.0.4852 -DgeneratePom=true -DgeneratePom.description="Flex ADT"

要引用 Nexus 公共存储库,请将存储库声明添加到您的 settings.xml 或 pom.xml 中,如下所示:

<repositories>
  <repository>
    <id>nexus-public</id>
    <url>http://repository.sonatype.org/content/groups/public</url>
  </repository>
</repositories>
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top