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>>> > >>>>>>> > > >>>>>>> > > >>>>>>> > > >>>>>>> > > >>>>>>> > > >>>>> > > >>>>> > > >>>> > > >> > > >> > > > > > >