Well actually you're doing stuff that Maven doesn't like.
From my experience whenever Maven makes it hard for you to do something, you 
are probably doing it wrong. 

So in case of your CSS ... I think the cleanest solution would be to clean up 
your project structure. You could probably hack Maven to do what you want, but 
trust me, you will be living with that hack.

Chris


-----Ursprüngliche Nachricht-----
Von: L'Hommelet Filip [mailto:Filip.L'[email protected]] 
Gesendet: Mittwoch, 27. Mai 2015 15:47
An: [email protected]
Betreff: RE: Flexmojos7.1 / Flash SDK 4.14 / external CSS

My main issue here seems to be that my css file does not reside in the same 
project.

So for Eclipse/Flash Builder, I can just go to the project properties and add 
the folder from the other project as  an additional source folder in the Flex 
Build Path – Source Path configuration panel.

And then everything compiles just fine in eclipse/flash builder.

However, maven is not aware of this.  So yeah, not sure if the maven 
build-helper-plugin will help me fixing that.. I will try to find out now.

(keep in mind, the structure of the files was not my choosing, those are all 
old projects that I need to convert to SDK 4.14 and consequently using  
flexmojos 7.1)

Kr,
Filip

From: Mario Souza [mailto:[email protected]]
Sent: dinsdag 26 mei 2015 23:43
To: [email protected]
Subject: Re: Flexmojos7.1 / Flash SDK 4.14 / external CSS

I know that css files are parsed by mxmlc compiler, however, I continue keeping 
my css files under resource folder, like that:

<mx:Style source="/../resources/css/Main.css"/>

under resources, I have:
css/
assets/
assets/images/
assets/icons/
locales/

everything compiling normally and working very well with 7.0.1 flexmojos 
version.

Regards.


Mario Souza
UI Developer

[cid:[email protected]]

Level 3, 54-56 Cambridge Terrace
PO Box 19204, Wellington 6011
New Zealand
M. +64 021 082 71135 | W. www.vizexplorer.com<http://www.vizexplorer.com/>

On 27 May 2015 at 00:55, Christofer Dutz 
<[email protected]<mailto:[email protected]>> wrote:
Hi Filip,

where is the css file located? If you are referencing it without a "/" at the 
beginning, it's expected to be in the same package ad the class referencing it.

Another thing that might be interesting: While in a html application a css file 
is a static resource, in flex it is usually compiled to ActionScript. So it 
needs to be added to the source-path and not the resource-path (At least I have 
the css files in my "src/main/flex" directory.

But judging from your last post on the other Thread (To start the weekend), I 
would assume you have the file in the correct directory, but you have added the 
source dir to the resources. So the flex compiler is currently expecting your 
flex code in "src/main/java" and treats everything else as static resource.

If you need multiple source paths I would again recommend to have a look at the 
build-helper-plugin and to set the source path to "src/main/flex" and use the 
plugin to add the second directory.

Chris



________________________________________
Von: L'Hommelet Filip 
<Filip.L'[email protected]<mailto:filip.l%[email protected]>>
Gesendet: Dienstag, 26. Mai 2015 13:34
An: [email protected]<mailto:[email protected]>
Betreff: Flexmojos7.1 / Flash SDK 4.14 / external CSS

How does flexmojos handle external CSS files?

Let me explain:

I have 2 projects:
One has my main app, the other is a library (which also contains a css file).

When with flexmojos3.8 and SDK 4.1, the whole pom setup worked and I could 
build my main app project with no issues at all.
Now however I get following error:

D:\I3G\git-workspaces\flex\wp-nato-47\FlexAppealApp\src\main\flex\FlexAppealApp.mxml(28):
 Error: Problem finding external stylesheet: buildingblocks2.css

    <fx:Style source="buildingblocks2.css"/>


The weird thing is, I didn't change anything to my poms.  So I guess something 
must have changed between flexmojos 3.8 and 7.1 in the way that projects are 
coupled.

The poms:

"main app":

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/maven-v4_0_0.xsd";>
                <modelVersion>4.0.0</modelVersion>
                <parent>
                               <groupId>com.ilias.i3g.flex.pom</groupId>
                               <artifactId>flex</artifactId>
                               <version>FlexSDK4.X-SNAPSHOT</version>
                </parent>
                <groupId>com.ilias.i3g.flex.applications</groupId>
                <artifactId>FlexAppealApp</artifactId>
                <version>${FlexAppealApp.version}</version>
                <name>${project.groupId}.${project.artifactId}</name>
                <packaging>swf</packaging>
                <dependencies>
                               <!--
                                                               Flex Framework 
libraries overrules
                                 -->
                               <dependency>
                                               <optional>true</optional>
                                               
<groupId>org.apache.flex.framework.themes</groupId>
                                               <artifactId>spark</artifactId>
                                               
<version>${flex.version}</version>
                                               <type>swc</type>
                                               <scope>theme</scope>
                               </dependency>

                               <!--
                                                               Flex Appeal 
Framework Libraries : runtime shared libraries (in the
                                                               future) (change 
<scope>internal</scope> to <scope>rsl</scope>) NOTE:
                                                               The order of the 
rsl libraries is important!
                                 -->
                               <!-- 1. FlexAppeal3rdPartyLib -->
                               <dependency>
                                               
<groupId>com.ilias.i3g.flex.framework</groupId>
                                               
<artifactId>FlexAppeal3rdPartyLib</artifactId>
                                               <type>swc</type>
                                               <scope>rsl</scope>
                               </dependency>
                               <!-- 2. FlexAppealFrameworkLib -->
                               <dependency>
                                               
<groupId>com.ilias.i3g.flex.framework</groupId>
                                               
<artifactId>FlexAppealFrameworkSharedLib</artifactId>
                                               <type>swc</type>
                                               <scope>rsl</scope>
                               </dependency>
                               <dependency>
                                               
<groupId>com.ilias.i3g.flex.framework</groupId>
                                               
<artifactId>BuildingBlocks_1</artifactId>
                                               <type>swc</type>
                                               <scope>rsl</scope>
                               </dependency>
                               <dependency>
                                               
<groupId>com.ilias.i3g.flex.framework</groupId>
                                               
<artifactId>BuildingBlocks_2</artifactId>
                                               <type>swc</type>
                                               <scope>rsl</scope>
                               </dependency>
                               <dependency>
                                               
<groupId>com.ilias.i3g.flex.framework</groupId>
                                               
<artifactId>FlexAppealFrameworkLib</artifactId>
                                               <type>swc</type>
                                               <scope>rsl</scope>
                               </dependency>
                               <!--
                                                               3. The 
CoreFacade interfaces must be loaded first, because they are
                                                               referenced in 
the bootstraps of the domains
                                 -->
                               <dependency>
                                               
<groupId>com.ilias.i3g.flex.facades</groupId>
                                               
<artifactId>JobControlMgmtCoreFacadeLib</artifactId>
                                               <type>swc</type>
                                               <scope>rsl</scope>
                               </dependency>
                               <!-- 4. -->
                               <dependency>
                                               
<groupId>com.ilias.i3g.flex.facades</groupId>
                                               
<artifactId>ITServiceDeskCoreFacadeLib</artifactId>
                                               <type>swc</type>
                                               <scope>rsl</scope>
                               </dependency>
                               <!-- 5. -->
                               <dependency>
                                               
<groupId>com.ilias.i3g.flex.facades</groupId>
                                               
<artifactId>ParameterSetsAPILib</artifactId>
                                               <type>swc</type>
                                               <scope>rsl</scope>
                               </dependency>
                               <!-- 6. -->
                               <dependency>
                                               
<groupId>com.ilias.i3g.flex.facades</groupId>
                                               
<artifactId>Ilias2GAPILib</artifactId>
                                               <type>swc</type>
                                               <scope>rsl</scope>
                               </dependency>
                               <!-- 7. -->
                               <dependency>
                                               
<groupId>com.ilias.i3g.flex.modules</groupId>
                                               
<artifactId>WidgetsLib</artifactId>
                                               <type>swc</type>
                                               <scope>rsl</scope>
                               </dependency>

                               <!-- axiis -->
                               <dependency>
                                               <groupId>com.axiis</groupId>
                                               
<artifactId>degrafaFlex4</artifactId>
                                               <version>1.0</version>
                                               <type>swc</type>
                                               <scope>rsl</scope>
                               </dependency>
                               <dependency>
                                               
<groupId>com.ilias.i3g.flex.framework</groupId>
                                               <artifactId>axiis</artifactId>
                                               
<version>${Axiis.trunk.version}</version>
                                               <scope>rsl</scope>
                                               <type>swc</type>
                               </dependency>


                               <!-- need to be here to let the 
copy-resources.xml Ant script work in the Module projects.
                                 This script uses the profile 
copy-theme-dependency which can be found in our parent.-->
                               <dependency>
                                               
<groupId>com.ilias.i3g.flex.applications</groupId>
                                               
<artifactId>FlexAppealTheme</artifactId>
      <version>${FlexAppealTheme.trunk.version}</version>
                                               <type>swf</type>
                                               <scope>external</scope>
                               </dependency>

                               <!-- Defined here so they will be present in the 
FlexAppealWebFlex WAR
                                 See FlexAppealWeb/pom.xml -->
<!--                        <dependency>
                                               
<groupId>org.apache.flex</groupId>
                                               
<artifactId>framework</artifactId>
                                               
<version>${flex.version}</version>
                                               <type>swz</type>
                               </dependency> -->
                </dependencies>
                <build>
                               <resources>
            <resource>
                <directory>src/main/flex</directory>
            </resource>
            <resource>
                <directory>src/main/resources</directory>
            </resource>
        </resources>
                               <plugins>
                                               <plugin>
                                                               
<groupId>net.flexmojos.oss</groupId>
                                                               
<artifactId>flexmojos-maven-plugin</artifactId>
                                                               
<extensions>true</extensions>
                                                               <configuration>
                                                                              
<rslUrls>
                                                                                
              <!-- maven-extract-rsl-plugin extracts with an _ sign  -->
                                                                                
              <url>./rsls/{artifactId}_{version}.{extension}</url>
                                                                              
</rslUrls>
                                                                              
<policyFileUrls>
                                                                                
              <url>/</url>
                                                                              
</policyFileUrls>
                                                                              
<verifyDigests>false</verifyDigests>
                                                                              
<keepGeneratedActionscript>false</keepGeneratedActionscript>
                                                                              
<definesDeclaration>
                                                                                
              <property>
                                                                                
                              <name>CONFIG::debugging</name>
                                                                                
                              <value>${flex.debug}</value>
                                                                                
              </property>
                                                                              
</definesDeclaration>
                                                               </configuration>
                                               </plugin>
                                               <plugin>
                                                               
<groupId>org.apache.maven.plugins</groupId>
                                                               
<artifactId>maven-assembly-plugin</artifactId>
                                               </plugin>
                               </plugins>
                </build>
                <profiles>
                               <profile>
                                               <id>flexdebug</id>
                                               <dependencies>
                                                               <dependency>
                                                                              
<groupId>com.ilias.i3g.flex.framework</groupId>
                                                                              
<artifactId>FlexSpyTestLib</artifactId>
                                                                              
<type>swc</type>
                                                                              
<scope>rsl</scope>
                                                               </dependency>
                                               </dependencies>
                               </profile>
                </profiles>
</project>



BuildingBlocks (with the css)

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
                xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/maven-v4_0_0.xsd";>
                <modelVersion>4.0.0</modelVersion>
                <parent>
                               <groupId>com.ilias.i3g.flex.pom</groupId>
                               <artifactId>flex</artifactId>
                               <version>branch-SDK4.6-SNAPSHOT</version>
                </parent>
                <groupId>com.ilias.i3g.flex.framework</groupId>
                <artifactId>BuildingBlocks_2</artifactId>
                <version>${BuildingBlocks_2.trunk.version}</version>
                <name>${project.groupId}.${project.artifactId}</name>
                <packaging>swc</packaging>
                <properties>
                               <cilistener.port>13542</cilistener.port>
                               <!-- <cilistener.port>14799</cilistener.port> -->
                               
<flex.sdk.version>${flex.version}</flex.sdk.version>
                </properties>

   <dependencies>
      <dependency>
         <groupId>com.ilias.i3g.flex.framework</groupId>
         <artifactId>FlexAppealFrameworkSharedLib</artifactId>
         <version>${FlexAppealFrameworkSharedLib.trunk.version}</version>
         <type>swc</type>
         <scope>external</scope>
      </dependency>

      <dependency>
         <groupId>com.ilias.i3g.flex.framework</groupId>
         <artifactId>FlexAppeal3rdPartyLib</artifactId>
         <version>${FlexAppeal3rdPartyLib.version}</version>
         <type>swc</type>
         <scope>external</scope>
      </dependency>

      <!-- TEST dependencies -->
      <dependency>
         <groupId>com.ilias.i3g.flex.framework</groupId>
         <artifactId>FlexAppealTestFrameworkLib</artifactId>
         <version>${FlexAppealFrameworkLib.trunk.version}</version>
         <type>swc</type>
         <scope>test</scope>
         <exclusions>
            <exclusion>
               <groupId>org.springextensions.actionscript</groupId>
               <artifactId>spring-actionscript-test</artifactId>
            </exclusion>
            <exclusion>
               <groupId>org.springextensions.actionscript</groupId>
               <artifactId>spring-actionscript-core</artifactId>
            </exclusion>
            <exclusion>
               <groupId>com.adobe.flexunit</groupId>
               <artifactId>all</artifactId>
            </exclusion>
            <exclusion>
               <groupId>com.ilias.i3g.flex.framework</groupId>
               <artifactId>FlexSpyTestLib</artifactId>
            </exclusion>
         </exclusions>
      </dependency>
      <dependency>
         <groupId>org.flexunit</groupId>
         <artifactId>flexunit</artifactId>
         <version>4.1.0</version>
         <classifier>flex4</classifier>
         <type>swc</type>
         <scope>test</scope>
      </dependency>
      <dependency>
         <groupId>org.mockito</groupId>
         <artifactId>mockito</artifactId>
         <version>1.4M4</version>
         <type>swc</type>
         <!-- TODO Why is scope-test not working here ??? -->
         <!-- <scope>test</scope> -->
      </dependency>
   </dependencies>
   <build>
      <plugins>
         <plugin>
            <groupId>net.flexmojos.oss</groupId>
            <artifactId>flexmojos-maven-plugin</artifactId>
            <executions>
               <execution>
                  <id>default-compile-swc</id>
                  <phase>compile</phase>
                  <goals>
                     <goal>compile-swc</goal>
                  </goals>
                  <configuration>
                     <debug>${flex.debug}</debug>
                     <optimize>${flex.optimize}</optimize>
                     <namespaces>
                        <namespace>
                           
<uri>library://ilias-solutions.com/mxml<http://ilias-solutions.com/mxml></uri>
                           <manifest>target/manifest.xml</manifest>
                        </namespace>
                     </namespaces>
                     <includeNamespaces>
                        
<namespace>library://ilias-solutions.com/mxml<http://ilias-solutions.com/mxml></namespace>
                     </includeNamespaces>
                     <includeFiles>
                        <include>${basedir}/src/main/flex/design.xml</include>
                        
<include>${basedir}/src/main/resources/buildingblocks2.css</include>
                     </includeFiles>
                  </configuration>
               </execution>
               <execution>
                  <phase>validate</phase>
                  <goals>
                     <goal>manifest</goal>
                  </goals>
               </execution>
            </executions>
         </plugin>
      </plugins>
   </build>
</project>


Any ideas/suggestions are welcome.

Kr,
Filip

Reply via email to