mojohaus / jaxb2-maven-plugin

JAXB2 Maven Plugin
https://www.mojohaus.org/jaxb2-maven-plugin/
Apache License 2.0
106 stars 77 forks source link

Exception - null (org.codehaus.mojo:jaxb2-maven-plugin:2.2:xjc:xjc:generate-sources) #108

Closed Arulselvanl closed 6 years ago

Arulselvanl commented 6 years ago

Getting exception in the "execution" line of the pom file.

org.codehaus.mojo jaxb2-maven-plugin 2.2 xjc xjc null (org.codehaus.mojo:jaxb2-maven-plugin:2.2:xjc:xjc:generate-sources) org.apache.maven.plugin.MojoExecutionException at org.codehaus.mojo.jaxb2.javageneration.AbstractJavaGeneratorMojo.performExecution(AbstractJavaGeneratorMojo.java:482) at org.codehaus.mojo.jaxb2.AbstractJaxbMojo.execute(AbstractJaxbMojo.java:257) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134) at org.eclipse.m2e.core.internal.embedder.MavenImpl.execute(MavenImpl.java:331) at org.eclipse.m2e.core.internal.embedder.MavenImpl$11.call(MavenImpl.java:1362) at org.eclipse.m2e.core.internal.embedder.MavenImpl$11.call(MavenImpl.java:1) at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java: 177) at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:112) at org.eclipse.m2e.core.internal.embedder.MavenImpl.execute(MavenImpl.java:1360) at org.eclipse.m2e.core.project.configurator.MojoExecutionBuildParticipant.build(MojoExecutionBuildParticipant.java:52) at org.eclipse.m2e.core.internal.builder.MavenBuilderImpl.build(MavenBuilderImpl.java:137) at org.eclipse.m2e.core.internal.builder.MavenBuilder$1.method(MavenBuilder.java:172) at org.eclipse.m2e.core.internal.builder.MavenBuilder$1.method(MavenBuilder.java:1) at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod$1$1.call(MavenBuilder.java:115) at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:177) at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:112) at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod$1.call(MavenBuilder.java:105) at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:177) at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:151) at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:99) at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod.execute(MavenBuilder.java:86) at org.eclipse.m2e.core.internal.builder.MavenBuilder.build(MavenBuilder.java:200) at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:735) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:206) at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:246) at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:301) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:304) at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:360) at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:383) at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:142) at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:232) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:56) Caused by: java.lang.NullPointerException at org.codehaus.mojo.jaxb2.shared.environment.ToolExecutionEnvironment.restore(ToolExecutionEnvironment.java:182) at org.codehaus.mojo.jaxb2.javageneration.AbstractJavaGeneratorMojo.performExecution(AbstractJavaGeneratorMojo.java:427) ... 33 more
lennartj commented 6 years ago

Does this occur for the latest stable release (i.e. version 2.3.1) as well?

lennartj commented 6 years ago

M2E / Eclipse integration was fixed in release 2.3.1 of the plugin. Upgrade to that version to remove the exception.

nicomartinez commented 6 years ago

I'm having the same problem. This is the configuration i have in the pom

<plugin>
    <groupId>org.codehaus.mojo</groupId>
        <artifactId>jaxb2-maven-plugin</artifactId>
        <version>2.3.1</version>
        <executions>
            <execution>
                <id>xjc</id>
                <goals>
                    <goal>xjc</goal>
                </goals>
            </execution>
        </executions>
        <configuration>
            <xjbSources>
                <xjbSource>src/main/resources/global.xjb</xjbSource>
            </xjbSources>
            <sources>
                <source>src/main/resources/schema.xsd</source>
            </sources>
        </configuration>
</plugin>
pbodnar commented 4 years ago

I can confirm this issue in newer Eclipse versions. I think it wasn't there back in Eclipse Oxygen (from 2018). Upgrading to release 2.3.1 did help, at least for Eclipse 2020-06.

There also seems to be a workaround: generate the sources by running a regular Maven build -> the error goes away once the generated folder or sources exist.

robinarehen commented 3 years ago

Same problem

Hello everybody, I'm working with the UBL standard, this is my configuratión, I have tried with different version and shapes

<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>jaxb2-maven-plugin</artifactId>
    <version>2.3.1</version>
    <executions>
        <execution>
            <id>xjc</id>
            <goals>
                <goal>xjc</goal>
            </goals>
            <configuration>
                <xjbSources>
                    <xjbSource>src/main/resources/schema/jaxb/bindings21.xjb</xjbSource>
                </xjbSources>
                <sources>
                    <source>src/main/resources/schema/common/CCTS_CCT_SchemaModule-2.1.xsd</source>
                </sources>
                <clearOutputDir>false</clearOutputDir>
            </configuration>
        </execution>
    </executions>
    <!-- <configuration>
        <dtd>true</dtd>
        <outputDirectory>${basedir}/src/main/java</outputDirectory>
        <packageName>com.rahdevelopers.dian.nomina.app.schema</packageName>
        <bindingDirectory>${basedir}/src/main/resources/schema/jaxb</bindingDirectory>
        <schemaDirectory>${basedir}/src/main/resources/schema/common</schemaDirectory>
        <clearOutputDir>false</clearOutputDir>
    </configuration> -->
</plugin>

UBL Standard

In this link XML-UBL we can find each XML and in this other link CCTS_CCT_SchemaModule-2.1.xsd we can find an example