Как добавить зависимости maven в путь сборки Flex в Flex Builder 3? - PullRequest
6 голосов
/ 06 мая 2009

Мы используем maven для создания проекта flex, используя flex-mojo's , и это здорово. Проблема в том, что я не могу добавить зависимости SWC, указанные в pom, к пути сборки Flex. Насколько я вижу, Flex Builder позволяет использовать только абсолютный путь, поэтому он не может видеть зависимости maven даже при использовании плагина m2eclipse для добавления поддержки maven.

Кто-нибудь нашел способ сборки с помощью maven и Flex Builder без дублирования зависимостей?

Ответы [ 3 ]

2 голосов
/ 11 августа 2009

Flex-mojos теперь поддерживает это, используя цель flexmojos:flexbuilder. Он не идеален для вложенных проектов, но, похоже, хорошо работает во всех других случаях.

1 голос
/ 20 августа 2009

Flex Builder теперь может обрабатывать относительные пути (см. отчет об ошибке ); Вы можете добавить их в свои .actionScriptProperties следующим образом:

<libraryPathEntry kind="3" linkType="1" path="${M2_HOME}/repository/flexlib/flexlib/2.4/flexunit-2.4.swc" useDefaultLinkType="false"/>
1 голос
/ 07 августа 2009

Это не очень элегантный ответ, но он может служить вашим целям.

Вы можете использовать плагин maven-dependency-plugin для вывода пути к классу в файл. build-classpath является соответствующей целью. приведенная ниже конфигурация выведет classpath Maven в [каталог проекта] /target/.mavenClasspath

Вы можете написать небольшой скрипт или задачу муравья, чтобы прочитать содержимое файла .mavenClasspath и добавить записи в Eclipse .classpath. Если вы сделаете скрипт немного умнее и удалите предыдущие записи, а затем настроите его как внешний компоновщик , у вас будет почти интегрированное решение.

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-dependency-plugin</artifactId>
  <executions>
    <execution>
      <id>output-classpath</id>
      <phase>package</phase>
      <goals>
        <goal>build-classpath</goal>
      </goals>
      <configuration>
        <outputFile>${project.build.directory}.mavenClasspath</outputFile>
      </configuration>
    </execution>
  </executions>
</plugin> 
...