Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[m2e-dev] Filtered xsds to target/xsd are not processed by plugin

Hello,

so we have a project which filters xsds and the result is of course
under target/xsd.

When importing this project the generated-sources are not available (not
generated).

The filtered xsds are there but the maven-jaxb2-plugin doesn't see it
(it uses the buildContext scanner which return 0 files).


i.e.:

            <plugin>
<groupId>org.jvnet.jaxb2.maven2</groupId>
<artifactId>maven-jaxb2-plugin</artifactId>
                <executions>
                    <execution>
                        <goals>
<goal>generate</goal>
                        </goals>
                        <configuration>
<extension>true</extension>
<strict>false</strict>
<schemaDirectory>${project.build.directory}/xsd</schemaDirectory>
                            <schemaIncludes>
<include>**/*.xsd</include>
                            </schemaIncludes>
<catalog>${project.build.directory}/xmllr/catalog.xml</catalog>
<episode>false</episode>
<noFileHeader>true</noFileHeader>
                        </configuration>
                    </execution>
                </executions>
            </plugin>


I think I understand why. The scanner doesn't see it because in
MavenBuilderImpl the resources are refreshed at the end of the
participants execution. This means that a participant doesn't "see" the
previous participant refresh. So the scanner or delta doesn't see those
files.


This causes the import to have a ton of errors in our multi-module
project. So people have to manually maven -> "update project".


I have an internal m2e patched version that is a hack which simply
refresh the resources (diff participantResults.getFiles()) for each
participant.

This works perfect. Of course I also need to check for markers so that
if the project was in error I need to build full (which is a ugly hack)
and take care of infinite rebuilds because of build failure...


My question is: Why is this not being worked on?






Back to the top