Getting Started¶
Requirements:
Instancio is packaged as a multi-release JAR and can be used with Java 8 or higher.
Since version 1.5.0
supports creating
java.lang.Record
classes on Java 16sealed
classes on Java 17
Dependencies¶
There are three dependencies available from Maven central:
Dependency | Module Name | Description |
---|---|---|
instancio-core |
org.instancio.core |
Core library |
instancio-junit |
org.instancio.junit |
JUnit Jupiter integration |
instancio-processor |
org.instancio.processor |
Annotation processor for generating metamodels |
instancio-junit
¶
If you use JUnit Jupiter, then use instancio-junit
.
Since instancio-junit
has a transitive dependency on instancio-core
, it is not necessary to import both.
Importing only instancio-junit
would suffice.
instancio-core
¶
If you use JUnit 4, TestNG, or would like to use Instancio standalone, then use instancio-core
:
instancio-core
itself has minimal compile
dependencies:
org.slf4j:slf4j-api
org.objenesis:objenesis
instancio-processor
¶
The annotation processor generates metamodels, which can be used to avoid referencing fields by their names. The annotation processor can be enabled as shown below. Please refer to the Metamodel section of the user guide for examples.