Ah ... you use it to auto-install the lib ... I thought it were an alternative 
to copying to the lib/ext directory.

Chris

________________________________________
Von: Frédéric THOMAS <[email protected]>
Gesendet: Freitag, 12. Dezember 2014 11:22
An: [email protected]
Betreff: RE: AW: [FlexMojos] Compatible Model Validator

Hi Chris,
> I remember a post of you using the extensions inside the pom ... as far as I 
> understood the thing this only works for adding wagon providers to maven. > 
> http://maven.apache.org/guides/mini/guide-using-extensions.html
Not only, "and plug-ins which provide lifecycle enhancements" from the same 
source, which is what I do, one of the component has a role = 
AbstractMavenLifecycleParticipant.class, I use it to install the extension.

Frédéric THOMAS

> From: [email protected]
> To: [email protected]
> Subject: AW: [FlexMojos] Compatible Model Validator
> Date: Fri, 12 Dec 2014 08:57:16 +0000
>
> Well after about 2 Weeks of not being able to invest one second in Flex & 
> FlexMojos today I'll be able to :-)
>
> One thing th Flexmojos FlexJS support is currently still lacking, is that 
> Flexmojos enforces some rules on the poms. I will have to greatly change 
> these and will probably add my configuration validation support in there. I 
> remember a post of you using the extensions inside the pom ... as far as I 
> understood the thing this only works for adding wagon providers to maven. 
> http://maven.apache.org/guides/mini/guide-using-extensions.html
>
>
> Chris
>
>
>
> ________________________________________
> Von: Christofer Dutz <[email protected]>
> Gesendet: Dienstag, 9. Dezember 2014 10:45
> An: [email protected]
> Betreff: AW: [FlexMojos] Compatible Model Validator
>
> The maven guys week never accept any change if this sort with an official 
> maven plugin :-( have given up going that road. They're pretty stubborn when 
> it comes to changes for non-java projects :-(
>
> Gesendet mit meinem HTC
>
> ----- Reply message -----
> Von: "Frédéric THOMAS" <[email protected]>
> An: "[email protected]" <[email protected]>
> Betreff: [FlexMojos] Compatible Model Validator
> Datum: Di., Dez. 9, 2014 10:34
>
> last night I started a POC adding a goal to the maven-dependency-plugin and 
> extending some of the Maven internal classes to try to address that thru this 
> plugin, my time is limited and still have to implement the integration tests 
> but in case it works with this plugin, I thing it could with FM, let's see...
>
> Frédéric THOMAS
>
> > From: [email protected]
> > To: [email protected]
> > Subject: AW: [FlexMojos] Compatible Model Validator
> > Date: Tue, 9 Dec 2014 09:24:14 +0000
> >
> > Well in order to address this issue I was planning on automatically 
> > processing the dependencies in a flex project and to have flexmojos add 
> > direct rsl scoped deps for transitive dependencies. Should make the copy 
> > rsl goal work correctly.
> >
> > Unfortunately my motivation investing my time in flex is currently at an 
> > all time low. Perhaps I'll look into this during the Christmas holidays.
> >
> > Chris
> >
> > Gesendet mit meinem HTC
> >
> > ----- Reply message -----
> > Von: "Frédéric THOMAS" <[email protected]>
> > An: "[email protected]" <[email protected]>
> > Betreff: [FlexMojos] Compatible Model Validator
> > Datum: Mo., Dez. 8, 2014 16:27
> >
> > > Unfortunately you will only prevent the warning messages. Still maven 
> > > won't dresolve the scopes correctly when it comes to transitive 
> > > dependencies :-( rely shooting would make it necessary do do greater 
> > > changes in mavens inner workings. But it's still a lot better than to 
> > > have the errors all the time.
> > You're right, in more because my "builder" parent pom have their own 
> > lifecycles, I can't rely on the copy-flex-resources goal to copy RSLs as it 
> > doesn't resolve (because it can't) the RSLs but check directly in the poms, 
> > which is very bad when you have parameterized  the merge, caching, rsl 
> > scopes, it finds only variables, thus, I wrote a groovy script which look 
> > at the *-configs:xml dependencies and extract the rsls info from the them 
> > and copy them to the "rsls" dir defined by the user, it seems a lot of work 
> > but it is not, moreover, at compile time, I ask FM to generate a classifier 
> > for each environment I need to deploy to but here again FM doesn't know how 
> > to manage custom classifiers and link-report, configs and size-report, so, 
> > all in I had to rely on something else, this little groovy script for those 
> > interested and the Maven conf after:
> > import groovy.util.XmlSlurper
> >
> > import java.nio.file.Files;
> >
> > def destinationDirectory = new File(project.properties.rslDestination)
> >
> > if (!destinationDirectory.exists())
> >     destinationDirectory.mkdir()
> >
> > project.dependencies.findAll{artifact -> artifact.getClassifier()== 
> > project.properties.configClassifier && artifact.getType()=='xml'}.each() {
> >     def artifact = it;
> >     println "Copying Flex resources for: " + artifact
> >
> >     def configFile = new File(settings.localRepository + File.separator +
> >             artifact.groupId.replace(".", File.separator) + File.separator +
> >             artifact.artifactId + File.separator +
> >             artifact.version + File.separator +
> >             artifact.artifactId + "-" + artifact.version + "-" + 
> > project.properties.configClassifier + "." + artifact.type)
> >
> >     def root = new XmlSlurper().parse(configFile)
> >
> >     def rslPathNodes = root["runtime-shared-library-path"];
> >
> >     rslPathNodes.each() {
> >         def rslPath = it["path-element"]
> >         def rslUrl = it["rsl-url"][0]
> >
> >         def rslUrlString =  rslUrl.toString()
> >         def ext = rslUrlString.substring(rslUrlString.lastIndexOf("."));
> >
> >         def originRslFile = new File(rslPath.toString().replace(".swc", 
> > ext));
> >         def destinationRslFile = new File(project.properties.rslDestination 
> > + File.separator + originRslFile.getName())
> >
> >         if (!destinationRslFile.exists()) {
> >             println "Copying RSL : " + originRslFile.getAbsolutePath() + 
> > "to : " + destinationRslFile.getAbsolutePath()
> >             Files.copy(originRslFile.toPath(), destinationRslFile.toPath())
> >         } else println "Skiping RSL copy of : " + 
> > destinationRslFile.getAbsolutePath() + " [Already exist]"
> >     }
> > }
> >     <plugin>
> >         <groupId>org.codehaus.gmaven</groupId>
> >         <artifactId>gmaven-plugin</artifactId>
> >
> >         <executions>
> >             <execution>
> >                 <id>copy-flex-resources</id>
> >                 <phase>generate-resources</phase>
> >                 <goals>
> >                     <goal>execute</goal>
> >                 </goals>
> >                 <configuration>
> >                     <properties>
> >                         
> > <rslDestination>${project.build.outputDirectory}/rsls</rslDestination>
> >                         
> > <configClassifier>${build.profile.id}-configs</configClassifier>
> >                     </properties>
> >                     <classpath>
> >                         <element>
> >                             <groupId>org.codehaus.groovy</groupId>
> >                             <artifactId>groovy-xml</artifactId>
> >                             <version>2.1.0-rc-2</version>
> >                         </element>
> >                     </classpath>
> >                     
> > <source>${pom.basedir}/src/main/script/copyFlexResources.groovy</source>
> >                 </configuration>
> >             </execution>
> >         </executions>
> >     </plugin>
> >
> > <dependencies>
> >     <dependency>
> >         <groupId>com.*.blabla</groupId>
> >         <artifactId>Application</artifactId>
> >         <version>${Application-version}</version>        
> > <classifier>${build.profile.id}-configs</classifier>
> >         <type>xml</type>
> >     </dependency>
> >
> >     <dependency>
> >         <groupId>com.*blabla</groupId>        
> > <artifactId>Module</artifactId>
> >         
> > <version>${Module-version}</version><classifier>${build.profile.id}-configs</classifier>
> >         <type>xml</type>
> >     </dependency>
> > </dependencies>
> >
> > Frédéric THOMAS
> >
> > > From: [email protected]
> > > To: [email protected]
> > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > Date: Sat, 6 Dec 2014 21:52:00 +0000
> > >
> > > Unfortunately you will only prevent the warning messages. Still maven 
> > > won't dresolve the scopes correctly when it comes to transitive 
> > > dependencies :-( rely shooting would make it necessary do do greater 
> > > changes in mavens inner workings. But it's still a lot better than to 
> > > have the errors all the time.
> > >
> > > Chris
> > >
> > > Gesendet mit meinem HTC
> > >
> > > ----- Reply message -----
> > > Von: "Frédéric THOMAS" <[email protected]>
> > > An: "[email protected]" <[email protected]>
> > > Betreff: [FlexMojos] Compatible Model Validator
> > > Datum: Sa., Dez. 6, 2014 15:54
> > >
> > > Hi Chris,
> > >
> > > Allowing more Maven Scopes is the reason why the extension I created 
> > > should be install before the build, for other kind of validations, you 
> > > can still create your extension but no needs to install it before the 
> > > build, AFAIK you can simply add it inside the build.extensions of your 
> > > project  parent pom if the extension is an 
> > > AbstractMavenLifeCycleParticipant and override the public void 
> > > afterProjectsRead( MavenSession session ) and I guess from here, with the 
> > > help of the MavenSession [1], you can have access to anything you need to 
> > > do other kind of validations or even other things.
> > >
> > > Or I didn't get well your point :-)
> > >
> > > Frédéric THOMAS
> > >
> > > [1] 
> > > http://maven.apache.org/ref/3.2.3/maven-core/apidocs/org/apache/maven/execution/MavenSession.html
> > >
> > > > From: [email protected]
> > > > To: [email protected]
> > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > Date: Fri, 5 Dec 2014 19:16:59 +0000
> > > >
> > > > Well I was thinking of a logic integrated into maven that allows 
> > > > plugins to contribute validators that he'll validating their own 
> > > > configuration. Unfortunately this is only possible using a maven 
> > > > extension (actually exactly the extension point you used). I am and was 
> > > > getting a lot of support questions which would actually be easy to 
> > > > validate automatically but are hard to guide humans through ;-)
> > > >
> > > > Let's say the logic would go through the plugins in the build and check 
> > > > each jar for validator logic an use this it found and have them 
> > > > validate their own configuration.
> > > >
> > > > Hope this explains what I was thinking of.
> > > >
> > > > Chris
> > > >
> > > > Gesendet mit meinem HTC
> > > >
> > > > ----- Reply message -----
> > > > Von: "Frédéric THOMAS" <[email protected]>
> > > > An: "[email protected]" <[email protected]>
> > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > Datum: Fr., Dez. 5, 2014 18:33
> > > >
> > > > Hum.. Not sure I understand totally, you want to add an extension to 
> > > > FlexMojos as a module and that extension could be extended to add 
> > > > features like rules and suggestions regarding the plugin configuration ?
> > > >
> > > > Frédéric THOMAS
> > > >
> > > > > From: [email protected]
> > > > > To: [email protected]
> > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > Date: Fri, 5 Dec 2014 16:27:54 +0000
> > > > >
> > > > > Eventually a modular solution would be a good idea. One that can be 
> > > > > extended with rules and suggestions regarding the plugin 
> > > > > configuration. If for example someone uses deprecated config options 
> > > > > or invalid ones, if someone uses bad practices etc.
> > > > >
> > > > > Chris
> > > > >
> > > > > Gesendet mit meinem HTC
> > > > >
> > > > > ----- Reply message -----
> > > > > Von: "Frédéric THOMAS" <[email protected]>
> > > > > An: "[email protected]" <[email protected]>
> > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > Datum: Fr., Dez. 5, 2014 16:03
> > > > >
> > > > > I mean, adding the extension as a new module and add a goal to 
> > > > > install the extension, what do you think ?
> > > > >
> > > > > Frédéric THOMAS
> > > > >
> > > > > From: [email protected]
> > > > > To: [email protected]
> > > > > Subject: RE: AW: [FlexMojos] Compatible Model Validator
> > > > > Date: Fri, 5 Dec 2014 15:01:06 +0000
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > Could be a new goal ?
> > > > >
> > > > > Frédéric THOMAS
> > > > >
> > > > > > From: [email protected]
> > > > > > To: [email protected]
> > > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > > Date: Fri, 5 Dec 2014 14:54:37 +0000
> > > > > >
> > > > > > Well I was more thinking of adding a module to flexmojos in order 
> > > > > > to release the lib. Copying would have to remain a manual task as I 
> > > > > > don't want to modify the maven installation.
> > > > > >
> > > > > > Chris
> > > > > >
> > > > > > Gesendet mit meinem HTC
> > > > > >
> > > > > > ----- Reply message -----
> > > > > > Von: "Frédéric THOMAS" <[email protected]>
> > > > > > An: "[email protected]" <[email protected]>
> > > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > > Datum: Fr., Dez. 5, 2014 13:50
> > > > > >
> > > > > > Hi Chris,
> > > > > > > I assume this is a maven extension which you have to deploy to 
> > > > > > > your maven extension directory
> > > > > > yes it is even though, I provided a profile to auto install it [1]
> > > > > > > I remember discussing something like this with cello a few years 
> > > > > > > ago but he deleted my posts on this topic and refused to add that 
> > > > > > > to flexmojos.
> > > > > > It happened to me as well and he even kicked me out of the group, 
> > > > > > bloody Velo :-)
> > > > > > > Nave now there's a way to add that as an additional module? But 
> > > > > > > only if you're interested in this.
> > > > > > Well I wouldn't how to do except that the plugin could copy the 
> > > > > > deployed extension into the lib/ext folder as done in Wagon maven 
> > > > > > plugin [2]
> > > > > > Any better ideas?
> > > > > >
> > > > > > Frédéric THOMAS
> > > > > > [1]<profile>
> > > > > >     <id>prepare-maven-extended-libs</id>
> > > > > >     <activation>
> > > > > >         <file>
> > > > > >             
> > > > > > <missing>${env.MAVEN_HOME}/lib/ext/flexmojos-compatible-model-validator.jar</missing>
> > > > > >         </file>
> > > > > >     </activation>
> > > > > >     <build>
> > > > > >         <plugins>
> > > > > >             <plugin>
> > > > > >                 <groupId>org.apache.maven.plugins</groupId>
> > > > > >                 <artifactId>maven-dependency-plugin</artifactId>
> > > > > >                 <version>2.8</version>
> > > > > >                 <executions>
> > > > > >                     <execution>
> > > > > >                         <id>copy</id>
> > > > > >                         <phase>validate</phase>
> > > > > >                         <goals>
> > > > > >                             <goal>copy</goal>
> > > > > >                         </goals>
> > > > > >                         <configuration>
> > > > > >                             <artifactItems>
> > > > > >                                 <artifactItem>
> > > > > >                                     
> > > > > > <groupId>com.doublefx.maven.utils.flexmojos</groupId>
> > > > > >                                     
> > > > > > <artifactId>flexmojos-compatible-model-validator</artifactId>
> > > > > >                                     
> > > > > > <version>1.0.0-SNAPSHOT</version>
> > > > > >                                     <type>jar</type>
> > > > > >                                     <overWrite>true</overWrite>
> > > > > >                                     
> > > > > > <outputDirectory>${env.MAVEN_HOME}/lib/ext</outputDirectory>
> > > > > >                                     
> > > > > > <destFileName>flexmojos-compatible-model-validator.jar</destFileName>
> > > > > >                                 </artifactItem>
> > > > > >                             </artifactItems>
> > > > > >                             
> > > > > > <overWriteReleases>true</overWriteReleases>
> > > > > >                             
> > > > > > <overWriteSnapshots>true</overWriteSnapshots>
> > > > > >                         </configuration>
> > > > > >                     </execution>
> > > > > >                 </executions>
> > > > > >             </plugin>
> > > > > >             <plugin>
> > > > > >                 <groupId>org.codehaus.gmaven</groupId>
> > > > > >                 <artifactId>gmaven-plugin</artifactId>
> > > > > >                 <version>1.4</version>
> > > > > >                 <executions>
> > > > > >                     <execution>
> > > > > >                         <phase>validate</phase>
> > > > > >                         <goals>
> > > > > >                             <goal>execute</goal>
> > > > > >                         </goals>
> > > > > >                     </execution>
> > > > > >                 </executions>
> > > > > >                 <configuration>
> > > > > >                     <source>
> > > > > >                         fail("FlexMojos Compatible Model Validator 
> > > > > > extension is now configured. Please restart the build, and then it 
> > > > > > will be successful.")
> > > > > >                     </source>
> > > > > >                 </configuration>
> > > > > >             </plugin>
> > > > > >         </plugins>
> > > > > >     </build>
> > > > > > </profile>
> > > > > >
> > > > > > [2] 
> > > > > > http://svn.codehaus.org/mojo/tags/wagon-maven-plugin-1.0-beta-5/src/main/java/org/codehaus/mojo/wagon/UpdateMaven3Mojo.java
> > > > > > > From: [email protected]
> > > > > > > To: [email protected]
> > > > > > > Subject: AW: [FlexMojos] Compatible Model Validator
> > > > > > > Date: Fri, 5 Dec 2014 11:51:34 +0000
> > > > > > >
> > > > > > > Cool Stuff.
> > > > > > >
> > > > > > > Will definitely look into this. But I assume this is a maven 
> > > > > > > extension which you have to deploy to your maven extension 
> > > > > > > directory, our was there a maven change that allows this as a 
> > > > > > > plugin?
> > > > > > >
> > > > > > > I remember discussing something like this with cello a few years 
> > > > > > > ago but he deleted my posts on this topic and refused to add that 
> > > > > > > to flexmojos.
> > > > > > >
> > > > > > > Nave now there's a way to add that as an additional module? But 
> > > > > > > only if you're interested in this.
> > > > > > >
> > > > > > > Chris
> > > > > > >
> > > > > > > Gesendet mit meinem HTC
> > > > > > >
> > > > > > > ----- Reply message -----
> > > > > > > Von: "Frédéric THOMAS" <[email protected]>
> > > > > > > An: "[email protected]" <[email protected]>
> > > > > > > Betreff: [FlexMojos] Compatible Model Validator
> > > > > > > Datum: Fr., Dez. 5, 2014 12:41
> > > > > > >
> > > > > > > Hi,
> > > > > > > For those interested I created and shared a Maven extension to 
> > > > > > > get rid of the Maven warnings regarding the custom scopes [1].
> > > > > > > Frédéric THOMAS
> > > > > > > [1] 
> > > > > > > https://github.com/doublefx/flexmojos-compatible-model-validator
> > > > > >
> > > > >
> > > >
> > >
> >
>

Reply via email to