Improve build handling of generated sources

Description

People intermittently get problems running the ORM build due to the way the build is set up for generating sources (Antlr, JAXB, JBoss Logging, etc).

There are 2 main types of generated sources:

  1. Sources needed to compile the "main sources"

  2. Sources not needed to compile the "main sources" (needed for running).

An example of the first group is JAXB. The Hibernate code refers to classes generated by the JAXB generator; if those classes are not generated, the Hibernate code will not compile.

An example of the second group is the JBoss Logging tool. The Hibernate code always refers to the annotated interface. The JBoss Logging tool creates runtime variants of those interfaces.

The distinction is important because we need to make sure the generators in the first group are run before we attempt to compile the sources. The generators in the second group can be run with the main compile or after it.

Environment

None

Status

Assignee

Steve Ebersole

Reporter

Steve Ebersole

Fix versions

Labels

None

backPortable

None

Suitable for new contributors

None

Requires Release Note

None

Pull Request

None

backportDecision

None

Components

Priority

Major
Configure