You have explicit execution ids (which is correct), while "default-cli" 
mentioned in the previous log, refers to the default execution (not either of 
the executions below). So yours are not called for some reason. 

Try adding "<phase>generate-sources</phase>" to each execution. 

Andrus


> On Feb 3, 2021, at 3:45 PM, Maria Huber <huber.maria...@gmx.de> wrote:
> 
> 
> Hey Andrus,
> this is the relevant piece of code:
> 
> <build>
>    <plugins>
>        <plugin>
>            <groupId>org.apache.cayenne.plugins</groupId>
>            <artifactId>cayenne-maven-plugin</artifactId>
>            <version>${cayenne.version}</version>    
> 
>            <executions>
>              <execution>
>                 <id>cgen1</id>
>                 <configuration>
>                   
> <map>${project.basedir}/src/main/resources/mapA.map.xml</map>
>                 </configuration>
>                 <goals>
>                   <goal>cgen</goal>
>                 </goals>
>               </execution>
>               <execution>
>                 <id>cgen2</id>
>                 <configuration>
>                   
> <map>${project.basedir}/src/main/resources/mapB.map.xml</map>
>                 </configuration>
>                 <goals>
>                   <goal>cgen</goal>
>                 </goals>
>               </execution>
>             </executions>
>         </plugin>
>    </plugins>
>  ...
> </build>
> 
> Thanks for your great support.
> Maria
> 
> On 2021/02/03 10:34:01, Andrus Adamchik <a...@objectstyle.org> wrote:
>>> Maybe that why the mentioned error "The parameters 'map' for goal 
>>> org.apache.cayenne.plugins:cayenne-maven-plugin:4.2.M2:cgen are missing or 
>>> invalid" occurs.>
>> 
>> Exactly. The question is why it is missing. Could you post the piece of your 
>> pom with two executions?>
>> 
>> Andrus >
>> 
>> 
>>> On Feb 3, 2021, at 10:41 AM, Maria Huber <hu...@gmx.de> wrote:>
>>>> 
>>> Hey Andrus,>
>>> I added two execution tags within the execution environment. According to 
>>> maven's '-X' output, the loaded configuration looks like this:>
>>>> 
>>> ">
>>> [DEBUG] Goal:          
>>> org.apache.cayenne.plugins:cayenne-maven-plugin:4.2.M2:cgen (default-cli)>
>>> [DEBUG] Style:         Regular>
>>> [DEBUG] Configuration: <?xml version="1.0" encoding="UTF-8"?>>
>>> <configuration>>
>>>   <defaultDir default-value="${project.build.sourceDirectory}"/>>
>>>   <force default-value="false">${force}</force>>
>>> </configuration>>
>>> [DEBUG] 
>>> =======================================================================>
>>> ">
>>>> 
>>> So the map information is missing. Maybe that why the mentioned error "The 
>>> parameters 'map' for goal 
>>> org.apache.cayenne.plugins:cayenne-maven-plugin:4.2.M2:cgen are missing or 
>>> invalid" occurs.>
>>> Is there any Maven settings to change this import behavior?>
>>>> 
>>> Kind regards, Maria>
>>>> 
>>>> 
>>>> 
>>> On 2021/02/02 07:21:48, Andrus Adamchik <a....@objectstyle.org> wrote:>
>>>> Defining two "<execution>" tags with different map names should be the 
>>>> solution to that. And this should work. After all global and per-execution 
>>>> config merging is a feature of the Maven engine, and Cayenne does not mess 
>>>> with it. Try running mvn with the "-X" option. It will print the actual 
>>>> merged configurations for each plugin invocation and will help to debug 
>>>> the issue.>>
>>>>> 
>>>> Andrus>>
>>>>> 
>>>>> 
>>>>> On Feb 1, 2021, at 11:14 PM, Maria Huber <hu...@gmx.de> wrote:>>
>>>>>>> 
>>>>> Hey Andrus,>>
>>>>> thanks for the help. Unfortunately this typing error doesn't solve my 
>>>>> problem.>>
>>>>> I want to define two different map-files and run for both the cgen 
>>>>> command. If possible this should work without running the modeler.>>
>>>>> Is there any solution to realize this in version 4.2.M2 (except the 
>>>>> execution environment)?>>
>>>>> The config outside configuration solution allows only to define one map.>>
>>>>>>> 
>>>>> Kind regards,>>
>>>>> Maria>>
>>>>>>> 
>>>>>>> 
>>>>> On 2021/02/01 05:53:27, Andrus Adamchik <a....@objectstyle.org> wrote:>>
>>>>>> Hi Maria,>>>
>>>>>>>> 
>>>>>> This may be just a typo in your POM:>>>
>>>>>>>> 
>>>>>>> <map>${project.basedir}/src/main/resources/scenario/my.map.xml</map>>>>
>>>>>>>> 
>>>>>> vs>>>
>>>>>>>> 
>>>>>>> <map>${project.basedir}/src/main/resources/my.map.xml</map>>>>
>>>>>>>> 
>>>>>>>> 
>>>>>> ("scenario" folder is missing in the last case)>>>
>>>>>>>> 
>>>>>> As an aside, since 4.1 CayenneModeler started to save your class 
>>>>>> generation settings in .map.xml in a portable way, so our default advice 
>>>>>> became to use CayenneModeler instead of Maven cgen for class generation. 
>>>>>> (But of course you can keep using Maven if that better fits your 
>>>>>> workflow).>>>
>>>>>>>> 
>>>>>> Andrus>>>
>>>>>>>> 
>>>>>>>> 
>>>>>>> On Jan 31, 2021, at 7:36 PM, Maria Huber <hu...@gmx.de> wrote:>>>
>>>>>>>>>> 
>>>>>>> Hey,>>>
>>>>>>> after spending quite some time, I still can't get the 
>>>>>>> cayenne-maven-plugin (4.4.M2) running as described in the latest 
>>>>>>> "Cayenne-Guide".>>>
>>>>>>> The problem is related to the execution environment.>>>
>>>>>>> This setting works just fine:>>>
>>>>>>>>>> 
>>>>>>> <plugin>>>>
>>>>>>>    <groupId>org.apache.cayenne.plugins</groupId>>>>
>>>>>>>    <artifactId>cayenne-maven-plugin</artifactId>>>>
>>>>>>>    <version>${cayenne.version}</version>>>>
>>>>>>>    <configuration>>>>
>>>>>>>            
>>>>>>> <map>${project.basedir}/src/main/resources/scenario/my.map.xml</map>>>>
>>>>>>>    </configuration>>>>
>>>>>>>    <executions>>>>
>>>>>>>            <execution>>>>
>>>>>>>                    <goals>>>>
>>>>>>>                            <goal>cgen</goal>>>>
>>>>>>>                    </goals>>>>
>>>>>>>            </execution>>>>
>>>>>>>    </executions>>>>
>>>>>>> </plugin>>>>
>>>>>>>>>> 
>>>>>>> But if I put the configuration inside the execution tag (as described 
>>>>>>> in the Cayenne Guide), Maven can't find the map property.>>>
>>>>>>>>>> 
>>>>>>> <plugin>>>>
>>>>>>>    <groupId>org.apache.cayenne.plugins</groupId>>>>
>>>>>>>    <artifactId>cayenne-maven-plugin</artifactId>>>>
>>>>>>>    <version>${cayenne.version}</version>>>>
>>>>>>>    <executions>>>>
>>>>>>>            <execution>>>>
>>>>>>>                    <id>execution1</id>>>>
>>>>>>>                    <configuration>>>>
>>>>>>>                            
>>>>>>> <map>${project.basedir}/src/main/resources/my.map.xml</map>>>>
>>>>>>>                    </configuration>>>>
>>>>>>>                    <goals>>>>
>>>>>>>                            <goal>cgen</goal>>>>
>>>>>>>                    </goals>>>>
>>>>>>>            </execution>>>>
>>>>>>>    </executions>>>>
>>>>>>> </plugin>>>>
>>>>>>>>>> 
>>>>>>> This is the error message:>>>
>>>>>>> "Failed to execute goal 
>>>>>>> org.apache.cayenne.plugins:cayenne-maven-plugin:4.2.M2:cgen 
>>>>>>> (default-cli) on project my-cayenne: The parameters 'map' for goal 
>>>>>>> org.apache.cayenne.plugins:cayenne-maven-plugin:4.2.M2:cgen are missing 
>>>>>>> or invalid">>>
>>>>>>>>>> 
>>>>>>> According to Stackoverflow, Maven handles the config-tag like this:>>>
>>>>>>> 1. If the <configuration> is outside the <executions> , it is the 
>>>>>>> configuration for the plugin to be used no matter what the life-cycle 
>>>>>>> phase is.>>>
>>>>>>> 2. If the <configuration> is inside the <executions>, it is the 
>>>>>>> configuration to be used in certain life-cycle phase.>>>
>>>>>>>>>> 
>>>>>>> What could be the reason for this strange behavior?>>>
>>>>>>>>>> 
>>>>>>> Kind regards>>>
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>> 
>>>>> 
>>>>> 
>>>> 
>> 
>> 
> 

Reply via email to