Well, current implementation is moduleFiles
<moduleFiles>
  <module>com/acme/AModule.mxml</module>
</moduleFiles>

That would be deprecated....  then this new modules approach would
arise as the new option.  It could also have the classifier
configurable...  once executing copyMojo it can lookup for
configuration and then copy the swf to their real locations.


VELO

On Dec 18, 1:05 am, Doug Daniels <[email protected]> wrote:
> Thanks now I'm clear on it (I didn't know Flexbuilder's destPath could be
> configured, do you have to manually edit the project files to change a
> module's destPath?).
>
> I've been digging into the flexmojos codebase maybe I could help contribute
> a feature like that if that's a feature on the Flexmojos roadmap.
>
> With Maven plugin XML configuration would there still be a way to support:
>
> <modules>
>   <module>my.mxml</module>
> </modules>
>
> and :
>
> <modules>
>  <module>
>    <file>my.mxml</file>
>
> >    <output>modules/my.swf</output>
> >    <optimize>true</optimize>
> >  </module>
> > </modules>
>
> Also in terms of Maven artifacts and classifiers, is it possible to include
> the type of output directory structure you describe. From what I understand
> the only thing you can really control is the name of the built artifact
> file.
>
> ~ doug daniels
>
> On Thu, Dec 17, 2009 at 8:27 PM, velo <[email protected]> wrote:
> > Flexbuilder configure the modules like this:
>
> > <modules>
> > <module application="src/HW.mxml" destPath="com/sonatype/nexus/plugins/
> > sad.swf" optimize="true" sourcePath="src/com/sonatype/nexus/plugins/
> > sad.mxml"/>
> > </modules>
>
> > So my idea was to make it like this on flexmojos:
> > <modules>
> >  <module>
> >    <file>com/sonatype/nexus/plugins/sad.mxml</file>
> >    <output>modules/sad.swf</output>
> >    <optimize>true</optimize>
> >  </module>
> > </modules>
>
> > Am I cleaner now?!
>
> > VELO
>
> > On Dec 17, 8:26 pm, Doug Daniels <[email protected]> wrote:
> > > I created a JIRA issue:
> > > [FLEXMOJOS-234] Configuring build artifact name of MXML module for
> > > /target/ and for WAR copy-flex-resource builds:
>
> > >https://issues.sonatype.org/browse/FLEXMOJOS-234
>
> > > I'm not sure I understand what you mean by it not being compatible
> > > with the other approach. Currently Flexbuilder (as far as I
> > > understand) doesn't allow you to configure the SWF output from your
> > > MXML modules and uses the MXML filename itself.
>
> > > Flexmojos also doesn't allow you to fully configure your SWF artifact
> > > output (or in copy-flex-resources) to match the Flexbuilder output (it
> > > only defaults to the standard maven artifact naming convention).
>
> > > Are there any suggested work arounds for this type of development
> > > environment or a best practices on how you should be developing Flex
> > > applications in Flexbuilder and using Flexmojos for your builds
> > > without having to manage 2 separate HTML resources to test/deploy your
> > > SWFs?
>
> > > On Thu, Dec 17, 2009 at 2:34 PM, velo <[email protected]> wrote:
> > > > The idea is to make modules more configurable... allowing you to have
> > > > the same options like you have on flexbuilder....  but right now this
> > > > isn't available....
> > > > I just not sure if does worth adding this feature that you suggest
> > > > knowing it won't be compatible with this other approach....
>
> > > > VELO
>
> > > > On Dec 17, 6:02 pm, Doug Daniels <[email protected]> wrote:
> > > >> We've had a lot of benefit using Flexmojos in our Flex/Java project.
> > > >> One thing that's bothered me (and maybe I've just missed the best
> > > >> practices or some documentation on it).
>
> > > >> We are working in a development environment where Java developers use
> > > >> Eclipse and then use maven to build the latest Flex clients, and Flex
> > > >> developers use FlexBuilder/Eclipse and have their mxml files compiled
> > > >> to bin-debug as <moduleName>.swf.
>
> > > >> The trouble is the flexmojos plugin builds the SWF into /target/ as
> > > >> <build.getFinalName()>-moduleName.swf. Also the copy-flex-resources
> > > >> copies the SWF artifact as <artifactID>-<version>-moduleName.swf  (you
> > > >> can configure it to stripVersion).
>
> > > >> What I'm looking for is a way to configure either Flexbuilder or the
> > > >> Flexmojos plugin to consistently output the SWF's as just
> > > >> moduleName.swf, this would make things like running JSP pages that
> > > >> include the latest FlexBuilder built SWF easier (currently we have a
> > > >> production JSP that has <artifactID>-<version>-moduleName.swf , and a
> > > >> debug one that has moduleName.swf).
>
> > > >> I understand that the additional version and project name information
> > > >> is standard Maven practice, and it makes sense as a configuration
> > > >> default, but I'd like there to be a way to override that
> > > >> configuration.
>
> > > >> My suggestion is to allow the ApplicationMojo.java accept a
> > > >> configuration argument.
>
> > > >> <stripModuleArtifactInfo>true</stripModuleArtifactInfo>
>
> > > >> Also in the CopyMojo I'd suggest the same configuration to control how
> > > >> the SWF's are copied into your WAR:
> > > >> <stripModuleArtifactInfo>true</stripModuleArtifactInfo>
>
> > > >> What I'm wondering is if anyone else has experience setting up a
> > > >> Flexbuilder/Maven development environment that allows devs to quickly
> > > >> run and test their MXML without having to build in Flexbuilder and
> > > >> then build in Maven.
>
> > > >> I've created a patch for the flexmojos-maven-plugin project that could
> > > >> be applied to Flexmojos (I haven't been able to compile and run it I'm
> > > >> having trouble getting a Flexmojos build environment setup.), but it's
> > > >> a very simple patch if one of the devs could test it out.
>
> > > >> Index: src/main/java/org/sonatype/flexmojos/compiler/
> > > >> ApplicationMojo.java
> > > >> ===================================================================
> > > >> --- src/main/java/org/sonatype/flexmojos/compiler/ApplicationMojo.java
> > > >> (revision 1536)
> > > >> +++ src/main/java/org/sonatype/flexmojos/compiler/ApplicationMojo.java
> > > >> (working copy)
> > > >> @@ -100,6 +100,13 @@
> > > >>      protected File source;
>
> > > >>      /**
> > > >> +     * When true will strip artifact and version information from the
> > > >> built MXML module artifact.
> > > >> +     *
> > > >> +     * @parameter default-value="false"
> > > >> +     */
> > > >> +    private boolean stripModuleArtifactInfo;
> > > >> +
> > > >> +    /**
> > > >>       * When true, flexmojos will register register every compiled SWF
> > > >> files as trusted. These SWF files are assigned to
> > > >>       * the local-trusted sandbox. They can interact with any other
> > > >> SWF files, and they can load data from anywhere,
> > > >>       * remote or local. On false nothing is done, so if the file is
> > > >> already trusted it will still as it is.
> > > >> @@ -254,8 +261,9 @@
> > > >>              setMavenPathResolver( moduleBuilder );
> > > >>              moduleBuilder.setConfiguration( configuration );
> > > >>              moduleBuilder.setLogger( new CompileLogger( getLog() ) );
> > > >> +            String moduleArtifactPrefix = stripModuleArtifactInfo ?
> > > >> "" : build.getFinalName() + "-" ;
> > > >>              File outputModule =
> > > >> -                new File( build.getDirectory(), build.getFinalName()
> > > >> + "-" + moduleName + "." + project.getPackaging() );
> > > >> +                new File( build.getDirectory(), moduleArtifactPrefix
> > > >> + moduleName + "." + project.getPackaging() );
> > > >>              updateSecuritySandbox( outputModule );
>
> > > >>              moduleBuilder.setOutput( outputModule );
> > > >> Index: src/main/java/org/sonatype/flexmojos/war/CopyMojo.java
> > > >> ===================================================================
> > > >> --- src/main/java/org/sonatype/flexmojos/war/CopyMojo.java
> >  (revision
> > > >> 1536)
> > > >> +++ src/main/java/org/sonatype/flexmojos/war/CopyMojo.java
> >  (working
> > > >> copy)
> > > >> @@ -109,6 +109,13 @@
> > > >>      private boolean stripVersion;
>
> > > >>      /**
> > > >> +     * When true will strip artifact and version information from the
> > > >> built MXML module artifact.
> > > >> +     *
> > > >> +     * @parameter default-value="false"
> > > >> +     */
> > > >> +    private boolean stripModuleArtifactInfo;
> > > >> +
> > > >> +    /**
> > > >>       * Use final name if/when available
> > > >>       *
> > > >>       * @parameter default-value="true"
> > > >> @@ -372,7 +379,8 @@
> > > >>          {
> > > >>              String classifier = StringUtils.isEmpty
> > > >> ( artifact.getClassifier() ) ? "" : "-" + artifact.getClassifier();
> > > >>              String version = stripVersion ? "" : "-" +
> > > >> artifact.getVersion();
> > > >> -            fileName = artifact.getArtifactId() + version +
> > > >> classifier + "." + SWF;
> > > >> +            String artifactPrefix = stripModuleArtifactInfo ? "" :
> > > >> artifact.getArtifactId() + version;
> > > >> +            fileName = artifactPrefix + classifier + "." + SWF;
> > > >>          }
> > > >>          else
> > > >>          {
>
> > > > --
> > > > 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]<flex-mojos%[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/
>
> > --
> > 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]<flex-mojos%[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/

-- 
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