I can't say for sure as you don't provide a link to your pom, but I'm
fairly sure you've configured it wrong. It should work.

/Anders

On Thu, Oct 25, 2012 at 2:13 PM, Arnaud bourree
<[email protected]> wrote:
> I try without sucess:
> [INFO] Scanning for projects...
> [INFO] 
> ------------------------------------------------------------------------
> [INFO] Building Unnamed - tmp.acme.rule:inherit-usage:pom:1.0
> [INFO]    task-segment: [enforcer:enforce]
> [INFO] 
> ------------------------------------------------------------------------
> [INFO] 
> ------------------------------------------------------------------------
> [ERROR] BUILD ERROR
> [INFO] 
> ------------------------------------------------------------------------
> [INFO] One or more required plugin parameters are invalid/missing for
> 'enforcer:enforce'
>
> [0] Inside the definition for plugin 'maven-enforcer-plugin' specify
> the following:
>
> <configuration>
>   ...
>   <rules>VALUE</rules>
> </configuration>.
>
>
> Note that I run it after mvn clear
>
> Arnaud.
>
> 2012/10/25 Anders Hammar <[email protected]>:
>> In your configuration, the rule configuration is on execution level
>> meaning that it will only be used for the lifecycle execution (mvn
>> package e.g.) and not when execution the plugin for command line (mvn
>> enforcer:enforce).
>>
>> There's been some noise around using the enforcer plugin from
>> command-line lately (is it you?). Personally I don't really get it,
>> but that's just me.
>>
>> If you want to be able to run mvn enforcer:enforce you need to move
>> the configuration to plugin level and also put it in the
>> pluginManagement section. Something like this:
>>
>>   <build>
>>     <pluginManagement>
>>       <plugins>
>>         <plugin>
>>           <groupId>org.apache.maven.plugins</groupId>
>>           <artifactId>maven-enforcer-plugin</artifactId>
>>           <version>1.1.1</version>
>>           <configuration>
>>             <rules>
>>               <AcmeParentInheritRule
>> implementation="com.acme.AcmeParentInheritRule" />
>>             </rules>
>>           </configuration>
>>           <dependencies>
>>             <dependency>
>>               <groupId>com.acme</groupId>
>>               <artifactId>acme-enforcer-rules</artifactId>
>>               <version>1.0</version>
>>             </dependency>
>>           </dependencies>
>>         </plugin>
>>       </plugins>
>>     </pluginManagement>
>>     <plugins>
>>       <plugin>
>>         <groupId>org.apache.maven.plugins</groupId>
>>         <artifactId>maven-enforcer-plugin</artifactId>
>>         <executions>
>>           <execution>
>>             <id>enforcer-check</id>
>>             <goals>
>>               <goal>enforce</goal>
>>             </goals>
>>           </execution>
>>         </executions>
>>       </plugin>
>>     </plugins>
>>   </build>
>>
>> This is the simplest way of doing this, btu there are drawbacks. One
>> is that all execution bindings will have the same rule set. In your
>> case probably not an issue. If it is an issue there are ways around
>> this by using the magic id ("default-cli") for the command line
>> execution. I have never used that magic id though in a real world use
>> case.
>>
>> /Anders
>>
>> On Thu, Oct 25, 2012 at 10:01 AM, Arnaud bourree
>> <[email protected]> wrote:
>>> On my side, I put configuration in <plugins> section and not in
>>> <pluginManagment> one.
>>>     <build>
>>>         <plugins>
>>>             <plugin>
>>>                 <groupId>org.apache.maven.plugins</groupId>
>>>                 <artifactId>maven-enforcer-plugin</artifactId>
>>>                 <version>1.1.1</version>
>>>                 <dependencies>
>>>                     <dependency>
>>>                         <groupId>com.acme</groupId>
>>>                         <artifactId>acme-enforcer-rules</artifactId>
>>>                         <version>1.0</version>
>>>                     </dependency>
>>>                 </dependencies>
>>>                 <executions>
>>>                     <execution>
>>>                         <configuration>
>>>                             <rules>
>>>                                 <AcmeParentInheritRule
>>> implementation="com.acme.AcmeParentInheritRule"/>
>>>                             </rules>
>>>                         </configuration>
>>>                         <goals>
>>>                             <goal>enforce</goal>
>>>                         </goals>
>>>                     </execution>
>>>                 </executions>
>>>             </plugin>
>>>         </plugins>
>>>     </build>
>>>
>>> And I note that "mvn enforcer:enforce" doesn't work without "package"
>>> So I run "mvn package enforcer:enforce"
>>> But in fact if you run "mvn package" maven will run enforcer rules
>>>
>>> Arnaud
>>>
>>> 2012/10/25 Anders Hammar <[email protected]>:
>>>> You probably have the configuration in the wrong place. Is it on
>>>> plugin level or execution level? It has to be on plugin level if
>>>> you're to run "mvn enforcer:enforce". Also, it should be in the
>>>> pluginManagement section.
>>>>
>>>> /Anders
>>>>
>>>> On Thu, Oct 25, 2012 at 7:27 AM, Wang, Simon <[email protected]> wrote:
>>>>> I specified rule in pom.xml, after run "mvn enforcer:enforce", still 
>>>>> complain no rules set.
>>>>> Really don't know what happened.
>>>>>
>>>>> Regards
>>>>> Simon
>>>>> -----Original Message-----
>>>>> From: Arnaud bourree [mailto:[email protected]]
>>>>> Sent: 2012年10月24日 22:18
>>>>> To: Maven Users List
>>>>> Subject: Re: Specify enforcer:enforce rules from command line
>>>>>
>>>>> I create issue MENFORCER-142
>>>>>
>>>>> I found a partial work-around: running mvn enforcer:enforce fail if there 
>>>>> is no rules set :-/
>>>>>
>>>>> But that not enough for me.
>>>>>
>>>>> Regards,
>>>>>
>>>>> Arnaud.
>>>>>
>>>>>
>>>>> 2012/10/23 Anders Hammar <[email protected]>:
>>>>>> Don't think it's possible. The enforcer plugin is meant to be bound to
>>>>>> the build lifecycle so it should be configured in the pom. But I guess
>>>>>> an enhancement ticket with a patch could change that? :-)
>>>>>>
>>>>>> /Anders
>>>>>>
>>>>>> On Tue, Oct 23, 2012 at 5:50 PM, Arnaud bourree
>>>>>> <[email protected]> wrote:
>>>>>>> Hello,
>>>>>>>
>>>>>>> How could we specify enforcer:enforce rules from command line?
>>>>>>>
>>>>>>> I want to run command line like following without updating any pom.xml:
>>>>>>> mvn enforcer:enforce -Drules=com.acme.UseAcmeParentPom
>>>>>>>
>>>>>>> The goal of this enforcer:enforce rule is to check that Acme's
>>>>>>> developers write pom.xml which inherit from acme's parent pom.xml And
>>>>>>> because they may not inherit from acme's parent pom.xml, I cannot
>>>>>>> specify enforcer rule in.
>>>>>>>
>>>>>>> Regards,
>>>>>>>
>>>>>>> Arnaud.
>>>>>>>
>>>>>>> ---------------------------------------------------------------------
>>>>>>> To unsubscribe, e-mail: [email protected]
>>>>>>> For additional commands, e-mail: [email protected]
>>>>>>>
>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: [email protected]
>>>>>> For additional commands, e-mail: [email protected]
>>>>>>
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: [email protected]
>>>>> For additional commands, e-mail: [email protected]
>>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: [email protected]
>>>> For additional commands, e-mail: [email protected]
>>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: [email protected]
>>> For additional commands, e-mail: [email protected]
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [email protected]
>> For additional commands, e-mail: [email protected]
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to