NEW We are pleased to announce the release of Orika 1.6.0 ! This version is available on Maven central repository
There are compatibility issues with version 1.5.4 when running in environments using JDK 17 or higher. The original author has already fixed this issue in the latest master branch, but has not released a new version for a long time. Therefore, I forked the project and created version 1.6.0 based on Orika’s master branch. This version is fully compatible with JDK 17 and has been published to the Maven Central Repository, so everyone can use it directly.
1.5.4版本在JDK17以上的环境中存在兼容性问题,原作者在最新的master中已经修改该问题,但是作者迟迟没有发布新版本,因此,本人fork了一个这个项目,使用orika的master分支创建了一个1.6.0的版本,该版本已经兼容JDK17,并且已经发布到Maven中央仓库,大家可以直接引用。
<dependency>
<groupId>io.github.vincentnull</groupId>
<artifactId>orika-core</artifactId>
<version>1.6.0</version>
</dependency>
If you want to use orika-util directly, you can import it directly.
如果你想直接使用util,可以直接引入 orika-util
<dependency>
<groupId>io.github.vincentnull</groupId>
<artifactId>orika-util</artifactId>
<version>1.6.0</version>
</dependency>Orika is a Java Bean mapping framework that recursively copies (among other capabilities) data from one object to another. It can be very useful when developing multi-layered applications.
Struggling with hand coded and reflection-based mappers? Orika can be used to simplify the process of mapping between one object layer and another.
Our ambition is to build a comprehensive, efficient and robust Java bean mapping solution. Orika focuses on automating as much as possible, while providing customization through configuration and extension where needed.
Orika enables the developer to :
- Map complex and deeply structured objects
- "Flatten" or "Expand" objects by mapping nested properties to top-level properties, and vice versa
- Create mappers on-the-fly, and apply customizations to control some or all of the mapping
- Create converters for complete control over the mapping of a specific set of objects anywhere in the object graph--by type, or even by specific property name
- Handle proxies or enhanced objects (like those of Hibernate, or the various mock frameworks)
- Apply bi-directional mapping with one configuration
- Map to instances of an appropriate concrete class for a target abstract class or interface
- Map POJO properties to Lists, Arrays, and Maps
Orika uses byte code generation to create fast mappers with minimal overhead.
Want to give Orika a try? Check out our new User Guide
- YourKit supports Orika with its full-featured Java Profiler. Take a look at YourKit's leading software products: YourKit Java Profiler.
- JetBrains kindly provides Orika with a free open-source licence for their IntelliJ IDEA Ultimate edition.

