Are you defining the plugin in your WAR POM also?  Using the 
pluginManagement I believe you also need to call out the use of the plugin 
in the WAR POM, but don't define any of the execution/configuration data, 
that is provided by the pluginManagement in the profile.


Profile provides this:

<pluginManagement>
  <plugins>
  ...
  <!-- unpacking of JAVASCRIPT dependencies -->
    <plugin>
       <groupId>org.apache.maven.plugins</groupId>
       <artifactId>maven-dependency-plugin</artifactId>
       <inherited>true</inherited>
       <executions>
         <execution>
           <id>unpack-javascripts</id>
           <goals>
             <goal>unpack</goal>
           </goals>
           <phase>package</phase>
           <configuration>
 <outputDirectory>${project.build.directory}/war/scripts</outputDirectory>
           </configuration>
         </execution>
       </executions>
     </plugin>
</pluginManagement>


WAR POM specifies this:


<build>
  <plugins>
    <plugin>
      <groupId>org.apache.maven.plugins</groupid>
      <artifactId>maven-dependency-plugin</artifactId>
    </plugin>
  </plugins>
</build>



Tim McGinnis
717 720-1962
Web Development
AES/PHEAA



From:
"Shan Syed" <[email protected]>
To:
"Maven Users List" <[email protected]>
Date:
05/13/2010 12:51 PM
Subject:
Re: inheriting and reusing the same plugin for different purposes? doesn't 
seem to find the right executions



thanks - how would I set this up?
I tried to specify two profiles in my parent POM, each with their own
pluginManagement blocks, containing a maven-dependency-plugin 
configuration,
and then activated the profile in the WAR projects' POMs, but there is no
result

I basically want my plugins' meta config stored in the root, and specific
configs applied in the WAR projects



On Thu, May 13, 2010 at 10:26 AM, Timothy Mcginnis
<[email protected]>wrote:

> What about using profiles?  Define 3 profiles; one for wsdl only, one 
for
> javascript only, and one for both.  Then have the war project activate 
the
> one it needs.
>
> Tim McGinnis
> 717 720-1962
> Web Development
> AES/PHEAA
>
>
>
> From:
> "Shan Syed" <[email protected]>
> To:
> "Maven Users List" <[email protected]>, [email protected]
> Date:
> 05/13/2010 09:54 AM
> Subject:
> Re: inheriting and reusing the same plugin for different purposes? 
doesn't
> seem to find the right executions
>
>
>
> Thanks, but the problem is that when I do that, both executions occur,
> even
> when I specify inheritance=false.
>
> I basically need to use the same plugin for two different purposes,
> without
> either of them affecting the other; I tried to specify different 
versions
> for the mvn dep plugin (i.e. in one block, specify 2.0, and 2.1 for the
> other), but no dice.
>
> Running mvn help:effective-pom on my WAR projects always shows the 
second
> maven-dependency-plugin configuration from the root POM in the
> pluginManagement section
> BUT
> in the actual plugin block, it shows the following (below)
> (note the second execution, with not configuration or anything 
associated
> with it)
>
> What is the exact logic for the merging of plugin configs in a 
multimodule
> project?
>
> thanks
>
> S
>
>  <plugin>
>   <artifactId>maven-dependency-plugin</artifactId>
>   <version>2.1</version>
>   <executions>
>     <execution>
>       <id>unpack-wsdls</id>
>       <phase>generate-resources</phase>
>       <goals>
>         <goal>unpack</goal>
>       </goals>
>       <configuration>
>
>
> 
<outputDirectory>C:\dev\sk\sk-saml\sk-saml-web\sk-saml-server\target/war/WEB-INF/wsdl</outputDirectory>
>       </configuration>
>     </execution>
>     <execution>
>       <id>unpack-javascripts</id>
>     </execution>
>   </executions>
>   <configuration>
>     <artifactItems>
>       <artifactItem>
>         <artifactId>sk-javascript-token</artifactId>
>         <groupId>com.securekey.javascript</groupId>
>         <version>1.0-SNAPSHOT</version>
>         <classifier>javascript</classifier>
>         <type>zip</type>
>       </artifactItem>
>     </artifactItems>
>   </configuration>
>  </plugin>
>
> On Thu, May 13, 2010 at 4:54 AM, Kalpak Gadre <[email protected]> 
wrote:
>
> > I have never tried declaring the same plugin twice, but you can simply
> > define more executions in the same plugin declaration like,
> >
> > <executions>
> > <execution>
> > <id>one</id>
> >         .
> >         .
> > </execution>
> > <execution>
> > <id>two</id>
> >         .
> >         .
> > </execution>
> > </executions>
> >
> >
> > Thanks,
> >
> > Kalpak
> >
> >
> >  Here's my scenario: I have a large multimodule project whose WARs 
share
> >> certain dependencies, which are packaged as zips by a few simple
> >> assemblies
> >> I wrote.
> >>
> >> I am using the maven-dependency-plugin to unpack the contents of 
these
> >> zips
> >> into their destination folders in the webapps.
> >>
> >> However, to reduce clutter and minimize maintenance, the majority of
> the
> >> plugin configuration is in the root POM, like so:
> >> (note that I am using the same plugin twice for two different reasons 
-
> is
> >> this valid?)
> >>
> >>      <build>
> >>           <pluginManagement>
> >>                <plugins>
> >>                      ...
> >>                     <!-- unpacking of JAVASCRIPT dependencies -->
> >>                     <plugin>
> >>                          <groupId>org.apache.maven.plugins</groupId>
> >> <artifactId>maven-dependency-plugin</artifactId>
> >>                          <inherited>true</inherited>
> >>                          <executions>
> >>                               <execution>
> >>                                    <id>unpack-javascripts</id>
> >>                                    <goals>
> >>                                         <goal>unpack</goal>
> >>                                    </goals>
> >>                                    <phase>package</phase>
> >>                                    <configuration>
> >>
> >>
> 
<outputDirectory>${project.build.directory}/war/scripts</outputDirectory>
> >>                                    </configuration>
> >>                               </execution>
> >>                          </executions>
> >>                     </plugin>
> >>                     <!-- unpacking of WSDL dependencies -->
> >>                     <plugin>
> >>                          <groupId>org.apache.maven.plugins</groupId>
> >> <artifactId>maven-dependency-plugin</artifactId>
> >>                          <inherited>true</inherited>
> >>                          <executions>
> >>                               <execution>
> >>                                    <id>unpack-wsdls</id>
> >>                                    <goals>
> >>                                         <goal>unpack</goal>
> >>                                    </goals>
> >>                                    <phase>generate-resources</phase>
> >>                                    <configuration>
> >>
> >>
> >>
>
> 
<outputDirectory>${project.build.directory}/war/WEB-INF/wsdl</outputDirectory>
> >>                                    </configuration>
> >>                               </execution>
> >>                          </executions>
> >>                     </plugin>
> >>                </plugins>
> >>           </pluginManagement>
> >>      </build>
> >>
> >> Some WARs need the WSDLs, some need the javascript files, while 
others
> >> don't
> >> need either - it will be up to the developers creating those 
projects.
> >>
> >> Here is an example usage in one of the WARs (note the ID of the
> execution,
> >> which is expected to be used to merge the whole configuration)
> >>
> >>      <build>
> >>           <plugins>
> >>                <plugin>
> >>                     <artifactId>maven-dependency-plugin</artifactId>
> >>                     <groupId>org.apache.maven.plugins</groupId>
> >>                     <inherited>true</inherited>
> >>                     <executions>
> >>                          <execution>
> >>                               <id>unpack-javascripts</id>
> >>                          </execution>
> >>                     </executions>
> >>                     <configuration>
> >>                          <artifactItems>
> >>                               <artifactItem>
> >>
> >> <artifactId>sk-javascript-token</artifactId>
> >>
> >> <groupId>com.securekey.javascript</groupId>
> >> <version>${project.version}</version>
> >> <classifier>javascript</classifier>
> >>                                    <type>zip</type>
> >>                               </artifactItem>
> >>                          </artifactItems>
> >>                     </configuration>
> >>                </plugin>
> >>           </plugins>
> >>      </build>
> >>
> >> So in general, the plugin configuration in the root POM will enforce
> some
> >> common things (destination folder, etc), and the usage will actually
> allow
> >> the developer to select what javascripts they need, without worrying
> about
> >> other configuration details.
> >>
> >> But the problem is when building, it's always the 2nd plugin
> configuration
> >> in the root POM that gets used, even though I specify the ID in the
> leaf
> >> POMs; so when I do an overall build, all the javascript files end up 
in
> a
> >> WSDL directory, even if I don't reference the WSDL execution at all.
> >> I inverse the order, and the result is the opposite; the javascripts
> end
> >> up
> >> in the right place, but all the WARs that have a WSDL dependency end 
up
> >> with
> >> a "scripts" directory full of WSDL files.
> >>
> >> I was under the impression that the ID is used to merge the
> configurations
> >> upon building the project, but I'm not seeing this. Is there a way to
> >> specify exactly what configuration to bind to?
> >> Specify two executions within the same<plugin>  causes the same
> behaviour,
> >> except with both folders.
> >>
> >> To generalize, in a multi-module project, how can I use the same 
plugin
> >> for
> >> totally different uses/scenarios?
> >>
> >> thanks,
> >>
> >> Shan
> >>
> >>
> >>
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [email protected]
> > For additional commands, e-mail: [email protected]
> >
> >
>
>
>
>
> 
==============================================================================
> This message contains privileged and confidential information intended 
for
> the above addressees only.  If you
> receive this message in error please delete or destroy this message 
and/or
> attachments.
>
> The sender of this message will fully cooperate in the civil and 
criminal
> prosecution of any individual engaging
> in the unauthorized use of this message.
>
> 
==============================================================================
>



==============================================================================
This message contains privileged and confidential information intended for the 
above addressees only.  If you
receive this message in error please delete or destroy this message and/or 
attachments.  

The sender of this message will fully cooperate in the civil and criminal 
prosecution of any individual engaging
in the unauthorized use of this message.
==============================================================================

Reply via email to