I found a project that does what I want, and they use the maven-
dependency-plugin to copy ALL the SWF's from a multimodule project
over:

http://www.google.com/codesearch/p?hl=en&sa=N&cd=8&ct=rc#jr41sObEqfE/trunk/fna/samples/blazeds_xdoclet_spring_hibernate/java_webapp/pom.xml&q=file:pom.xml%20%3Cclassifier%3E%20swf

    <build>
        <plugins>
...

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-dependency-plugin</artifactId>
            <executions>
                <execution>
                    <id>copy-swf</id>
                    <phase>process-classes</phase>
                    <goals>
                        <goal>copy-dependencies</goal>
                    </goals>
                    <configuration>
                        <outputDirectory> ${project.build.directory}/$
{project.build.finalName} </outputDirectory>
                        <includeTypes>swf</includeTypes>
                    </configuration>

                </execution>
            </executions>
        </plugin>
...
On Nov 19, 6:00 pm, Doug Daniels <[email protected]> wrote:
> I do understand that it is "bad practice" to have multiple modules in
> the same SWF project (maven wants one artifact per project), but
> nevertheless flexmojos supports:
>                     <moduleFiles>
>                         <module>main.mxml</module>
>                         <module>battle.mxml</module>
>                     </moduleFiles>
>
> It appears that the flexmojos plugin will build multiple SWF artifacts
> and install them into your local maven repository with the classifier
> (such as my-app-1.0-SNAPSHOT-battle.swf, or my-app-1.0-SNAPSHOT-
> main.swf).
>
> How do the flexmojos developers intend this to be used by other
> projects (the main use case being a WAR project including those built
> SWF's), When I include my module classifier as a dependency the
> flexmojos plugin doesn't copy over my specific SWF (only the generic
> SWF built from my main.mxml e.g. my-app-1.0-SNAPSHOT.swf).
>
>         <dependency>
>             <groupId>${project.groupId}</groupId>
>             <version>${project.version}</version>
>             <artifactId>pvp-client</artifactId>
>             <type>swf</type>
>             <classifier>battle</classifier>
>         </dependency>
>
> Is there anything I can do short of debugging the flexmojos
> interaction with the Maven WAR project type copying dependencies?
>
> On Oct 28, 2:05 pm, Marvin Froeder <[email protected]> wrote:
>
> > Ow, now I understudy =D
>
> > Anyway, I hate modules mixed with application =D
>
> > On Wed, Oct 28, 2009 at 5:24 PM, Matt <[email protected]> wrote:
>
> > > Marvin,
>
> > > I shouldn't have said don't include it in compile-swf.  My main point
> > > was to the other author that the best way to structure the project
> > > would be one module per project.
>
> > > On Oct 28, 2:54 pm, Marvin Froeder <[email protected]> wrote:
> > > > Do not ask me that, ask adobe... they invented, supported and dispersed
> > > > that... I'm just trying to make Flexmojos a bit less shocking for
> > > > flexbuilder users....
>
> > > > On Wed, Oct 28, 2009 at 4:49 PM, Matt <[email protected]> wrote:
>
> > > > > You really should split those modules out into separate projects.  I
> > > > > don't even understand why there is a <modules> element on compile-
> > > > > swf.
>
> > > > > 1) The "Maven way" is to have one project per artifact.  A module is
> > > > > definitely a separate artifact that it's loader
> > > > > 2) A module is supposed to be modular.  Why is it sharing all the code
> > > > > of the application and other modules.  If there is shared code among
> > > > > the modules and application it should be in a library project.
>
> > > > > On Oct 5, 10:01 am, Marvin Froeder <[email protected]> wrote:
> > > > > > So it is a limitation on copy plugin
>
> > > > > > On Mon, Oct 5, 2009 at 10:55 AM, Michael Martinsen <
>
> > > > > > [email protected]> wrote:
>
> > > > > > > Hi VELO
>
> > > > > > > I'm not sure I follow... so to be sure:
>
> > > > > > > The pom of my WAR module looks somewhat like this:
> > > > > > > ...
> > > > > > >        <build>
> > > > > > >                <plugins>
> > > > > > >                         <plugin>
>
> > > > >  <groupId>org.sonatype.flexmojos</groupId>
>
> > > > > > >  <artifactId>flexmojos-maven-plugin</artifactId>
> > > > > > >                                <version>3.3.0</version>
> > > > > > >                                 <executions>
> > > > > > >                                        <execution>
> > > > > > >                                                <goals>
>
> > > > > > >  <goal>copy-flex-resources</goal>
> > > > > > >                                                </goals>
> > > > > > >                                        </execution>
> > > > > > >                                </executions>
> > > > > > >                        </plugin>
> > > > > > >                </plugins>
> > > > > > >        </build>
> > > > > > >        <dependencies>
> > > > > > >                <dependency>
> > > > > > >                        <groupId>my.comp</groupId>
> > > > > > >                        <artifactId>swf</artifactId>
> > > > > > >                        <version>1.0-SNAPSHOT</version>
> > > > > > >                        <type>swf</type>
> > > > > > >                </dependency>
> > > > > > >        </dependencies>
>
> > > > > > > The dependency is toward the MainApp SWF artifact - which IS
> > > included
> > > > > > > in the war, but the remaining modules are not.
> > > > > > > You ask if I have added dependencies to the other modules - I have
> > > > > > > tried adding a dependency to one of the modules by adding
> > > classifier
> > > > > > > attribute:
>
> > > > > > >                <dependency>
> > > > > > >                        <groupId>my.comp</groupId>
> > > > > > >                        <artifactId>swf</artifactId>
> > > > > > >                        <version>1.0-SNAPSHOT</version>
> > > > > > >                        <type>swf</type>
> > > > > > >                        <classifier>ModuleOne</classifier>
> > > > > > >                </dependency>
>
> > > > > > > No error is reported when building the WAR module, but only the
> > > > > > > MainApp SWF is included.
> > > > > > > If you know of any other way to do this, I'm all ears.
>
> > > > > > > Thanks
>
> > > > > > > /Michael
>
> > > > > > > On Oct 5, 2:17 pm, Marvin Froeder <[email protected]> wrote:
> > > > > > > > ?!
> > > > > > > > I have no idea what lead you into that conclusion.
>
> > > > > > > > VELO
>
> > > > > > > > On Mon, Oct 5, 2009 at 9:14 AM, Michael Martinsen <
>
> > > > > > > > [email protected]> wrote:
>
> > > > > > > > > The modules (module1 and module2) are not Maven artifacts as
> > > the
> > > > > > > > > MainApp SWF itself is. They are simply Flex modules which live
> > > > > > > > > togehter with the MainApp SWF Maven module; the modules are
> > > loaded
> > > > > by
> > > > > > > > > the main app at runtime.
> > > > > > > > > Hence - as far as I know - I cannot add a dependency to those
> > > > > (without
> > > > > > > > > splitting them into separate maven modules)
>
> > > > > > > > > /Michael
>
> > > > > > > > > On Oct 5, 1:44 pm, Marvin Froeder <[email protected]> wrote:
> > > > > > > > > > Did you add all 3 dependencies to your war pom?  Mean the
> > > main
> > > > > swf,
> > > > > > > > > module1
> > > > > > > > > > and module2?
> > > > > > > > > > If yes, and did not work, it is a limitation on copy mojo.
>
> > > > > > > > > > VELO
>
> > > > > > > > > > On Mon, Oct 5, 2009 at 4:01 AM, Michael Martinsen <
>
> > > > > > > > > > [email protected]> wrote:
>
> > > > > > > > > > > Hi
>
> > > > > > > > > > > I'm currently in the process of moving an existing Flex
> > > project
> > > > > > > which
> > > > > > > > > > > is
> > > > > > > > > > > based on pure-mvc and has multiple Flex modules.
> > > > > > > > > > > My project has the following maven layout:
>
> > > > > > > > > > > <root>
> > > > > > > > > > >  -> swf
> > > > > > > > > > >  -> war
>
> > > > > > > > > > > Now the swf module uses the mojo compiler and it is called
> > > with
> > > > > the
> > > > > > > > > > > moduleFiles included:
>
> > > > > > > > > > > <plugin>
> > > > > > > > > > >    <groupId>org.sonatype.flexmojos</groupId>
> > > > > > > > > > >    <artifactId>flexmojos-maven-plugin</artifactId>
> > > > > > > > > > >    <version>3.3.0</version>
> > > > > > > > > > >    <configuration>
> > > > > > > > > > >        <sourceFile>MainApp.mxml</sourceFile>
> > > > > > > > > > >        <targetPlayer>10.0.0</targetPlayer>
> > > > > > > > > > >        <moduleFiles>
> > > > > > > > > > >            <module>ModuleOne.mxml</module>
> > > > > > > > > > >           <module>ModuleTwo.mxml</module>
> > > > > > > > > > >        </moduleFiles>
>
> > > > > > > > > > > It produces the main SWF file AND the ModuleOne.swf and
> > > > > > > ModuleTwo.swf.
>
> > > > > > > > > > > The war module uses the copy-flex-resource goal to copy 
> > > > > > > > > > > the
> > > > > > > resources
> > > > > > > > > > > into
> > > > > > > > > > > the war and it has a dependency to the swf module.
> > > > > > > > > > > But only the main app of the swf module is included...
> > > > > > > > > > > Is there any way to make the copy-flex-resource goal do
> > > this?
>
> > > > > > > > > > > Thanks
>
> > > > > > > > > > > /Michael

-- 
You received this message because you are subscribed to the Google
Groups "Flex Mojos" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/flex-mojos?hl=en?hl=en

http://blog.flex-mojos.info/

Reply via email to