Как установить тему с помощью Flexmojos? - PullRequest
7 голосов
/ 05 октября 2011

При компиляции с использованием flexmojos я получаю предупреждение:

[ПРЕДУПРЕЖДЕНИЕ] В разделе или в любых зависимостях области видимости "theme" явно не определено ни одной темы.Flexmojos сейчас пытается выяснить, какие темы включить.(чтобы избежать этого предупреждения, вы должны явно указать зависимости вашей темы)

[ПРЕДУПРЕЖДЕНИЕ] Добавление темы spark.css, потому что spark.swc был включен как зависимость

Я попытался добавить:

<dependency>
    <groupId>com.adobe.flex.framework</groupId>
    <artifactId>spark</artifactId>
    <type>swc</type>
    <scope>theme</scope>
    <version>${flex.sdk.version}</version>
</dependency>

Но я просто получаю сообщение об ошибке:

com.adobe.flex.framework: spark: swc должен быть одним из [compile, runtime, system] но есть 'theme'

Я просто хочу использовать стандартную тему Spark.

Спасибо

Ответы [ 3 ]

2 голосов
/ 29 ноября 2011

У меня была такая же проблема (добавление темы работало, но выдает ужасные предупреждения).Я исправил это, явно указав CSS-файл темы следующим образом:

  1. Добавьте следующее в конфигурацию flexmojos:

    <themes>
        <theme>spark-theme-${flex.sdk.version}.css</theme>
    </themes>
    
  2. Добавьте темукак зависимость:

    <dependency>
        <groupId>com.adobe.flex.framework</groupId>
        <artifactId>spark-theme</artifactId>
        <version>${flex.sdk.version}</version>
        <type>css</type>
    </dependency>
    
  3. извлеките зависимость в ваш выходной каталог.Есть несколько способов сделать это, включая простую копию муравья.Я решил использовать подключаемый модуль зависимостей maven:

    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-dependency-plugin</artifactId>
        <executions>
            <execution>
                <id>copy-theme-file</id>
                <phase>process-resources</phase>
                <goals>
                    <goal>copy-dependencies</goal>
                </goals>
                <configuration>
                    <outputDirectory>${project.build.outputDirectory}</outputDirectory>
                    <includeArtifactIds>spark-theme</includeArtifactIds>
                </configuration>
            </execution>
        </executions>
    </plugin>
    

Следуя этим шагам, копирует CSS-файл spark-theme в выходной каталог (в большинстве случаев / target / classes) и явно ссылается на него.в файл CSS в конфигурации flexmojos.

Это полностью избавило меня от всех предупреждений темы.Надеюсь, это кому-нибудь поможет.

0 голосов
/ 26 декабря 2013

Или, более просто с этим ответом (просто подумайте, чтобы объявить его в ваших dependencyManagement и зависимостях тегах вашего pom

0 голосов
/ 01 февраля 2012

Я использую Flex-Mojos 4.1-beta, и темы «просто работают» ™, я не могу поручиться за более ранние версии.

Взяв пример, добавьте тему искры (часть SDK):

   <dependency>
        <groupId>com.adobe.flex.framework</groupId>
        <artifactId>spark</artifactId>
        <version>${flex.version}</version>
        <scope>theme</scope>
        <type>swc</type>
    </dependency>

Теперь потяните тему, которую я раньше, я сам определил:

    <dependency>
        <groupId>ie.hunt</groupId>
        <artifactId>theme-library</artifactId>
        <version>1.0-SNAPSHOT</version>
        <type>swc</type>
        <scope>theme</scope>
    </dependency>

И тема 'spark' применяется, а затем переопределяется по правилам, которые я определил в моей собственной теме swc. Больше нечего делать.

Использование подраздела «themes» в «plugin» -> «configuration» создает бесполезные исключения нулевых указателей, например:

 <configuration>
 <themes>
  <theme>spark.css</theme>
 <themes>
 ...
 </configuration>

Ошибка вывода:

 [ERROR] Failed to execute goal org.sonatype.flexmojos:flexmojos-maven-plugin:4.1-beta:compile-swc (default-compile-swc) on project theme-library: java.lang.NullPointerException -> [Help 1]
...