[fedora-java] Installing effective Maven POM files

Aleksandar Kurtakov akurtako at redhat.com
Wed Feb 20 16:25:27 UTC 2013


----- Original Message -----
> From: "Mikolaj Izdebski" <mizdebsk at redhat.com>
> To: "java-devel" <java-devel at lists.fedoraproject.org>
> Sent: Wednesday, February 20, 2013 6:05:57 PM
> Subject: Re: [fedora-java] Installing effective Maven POM files
> 
> > > That's easily doable. Add xmvn-mojo into pluginManagement of
> > > parent
> > > POM.
> > > Configuration of xmvn-mojo would be inherited by all offspring
> > > POMs.
> > > One of configuration options available would be disabling
> > > generating
> > > of
> > > effective POMs.
> > 
> > Care to give an example how this will look like?
> 
> <project>
>   ...
>   <build>
>     ...
>     <pluginManagement>
>       <plugins>
>         <!-- This plugin's configuration is used to store XMvn
>         settings
>              only. It has no influence on the Maven build itself. -->
>         <plugin>
>           <groupId>org.fedoraproject.xmvn</groupId>
>           <artifactId>xmvn-mojo</artifactId>
>           <version>0.4.0</version>
>           <configuration>
>             <installerSettings>
>               <skipEffectivePom>true</skipEffectivePom>
>             </installerSettings>
>           </configuration>
>         </plugin>
>     </pluginManagement>
>   </build>
> </project>
> 
> Any configuration option could be specified this way. For example
> local depmaps, custom reposirories, logging levels etc.
> 
> I include full synopis of available XMvn configuration options below:
> 
> <configuration>
>   <properties>
>     <property>
>       <name/>
>       <value/>
>     </property>
>   </properties>
>   <buildSettings>
>     <debug/>
>     <skipTests/>
>     <compilerSource/>
>   </buildSettings>
>   <artifactManagement>
>     <rule>
>       <artifact>
>         <groupId/>
>         <artifactId/>
>         <version/>
>       </artifact>
>       <targetPackage/>
>       <files/>
>       <aliases>
>         <alias>
>           <groupId/>
>           <artifactId/>
>           <version/>
>         </alias>
>       </aliases>
>     </rule>
>   </artifactManagement>
>   <resolverSettings>
>     <debug/>
>     <localRepositories/>
>     <jarRepositories/>
>     <pomRepositories/>
>     <metadataRepositories/>
>     <prefixes/>
>     <blacklist>
>       <artifact>
>         <groupId/>
>         <artifactId/>
>         <version/>
>       </artifact>
>     </blacklist>
>   </resolverSettings>
>   <installerSettings>
>     <packageName/>
>     <skipProvides/>
>     <skipRequires/>
>     <skipRequires/>
>     </skipEffectivePom>
>     <jarDir/>
>     <jniDir/>
>     <pomDir/>
>     <metadataDir/>
>     <installRoot/>
>   </installerSettings>
> </configuration>
> 
> > Are you effectively saying that mvn-local/rpmbuild can/will
> > continue
> > to use normal(non-effective) poms always? So mvn-local stays a
> > usable development tool not just packaging.
> 
> Yes. Only %mvn_install installs effective POMs. mvn-rpmbuild,
> mvn-local,
> mvn and xmvn tools don't install any files (that includes POMs).
> When using these POM installation is left to /bin/install command or
> maven-install-plugin.

That was not the question. The quesion is if I have maven+plugins installed from rpms and I do mvn-local to build something it will use the effective poms installed and not the normal poms, rights? So is it possible to have both effective and normal poms installed and when using mvn-local/rpmbuild it to use the normal poms and not effective poms?

Alexander Kurtakov
Red Hat Eclipse team

> 
> --
> Mikolaj
> --
> java-devel mailing list
> java-devel at lists.fedoraproject.org
> https://admin.fedoraproject.org/mailman/listinfo/java-devel


More information about the java-devel mailing list