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