diff --git a/docs/topics/no-arg-plugin.md b/docs/topics/no-arg-plugin.md
index 8691bf43141..24ad11a5650 100644
--- a/docs/topics/no-arg-plugin.md
+++ b/docs/topics/no-arg-plugin.md
@@ -2,21 +2,46 @@
The *no-arg* compiler plugin generates an additional zero-argument constructor for classes with a specific annotation.
-The generated constructor is synthetic so it can't be directly called from Java or Kotlin, but it can be called using reflection.
+The generated constructor is synthetic, so it can't be directly called from Java or Kotlin, but it can be called using reflection.
This allows the Java Persistence API (JPA) to instantiate a class although it doesn't have the zero-parameter constructor
from Kotlin or Java point of view (see the description of `kotlin-jpa` plugin [below](#jpa-support)).
+## In your Kotlin file
+
+Add new annotations to mark the code that needs a zero-argument constructor:
+
+```kotlin
+package com.my
+
+annotation class Annotation
+```
+
## Gradle
Add the plugin using Gradle's plugins DSL:
+
+
+
+```kotlin
+plugins {
+ kotlin("plugin.noarg") version "%kotlinVersion%"
+}
+```
+
+
+
+
```groovy
plugins {
- id "org.jetbrains.kotlin.plugin.noarg" version "%kotlinVersion%"
+ id "org.jetbrains.kotlin.plugin.noarg" version "%kotlinVersion%"
}
```
+
+
+
Then specify the list of no-arg annotations that must lead to generating a no-arg constructor for the annotated classes:
```groovy
@@ -74,12 +99,27 @@ and [`@MappedSuperclass`](https://docs.oracle.com/javaee/7/api/javax/persistence
Add the plugin using the Gradle plugins DSL:
+
+
+
+```kotlin
+plugins {
+ kotlin("plugin.jpa") version "%kotlinVersion%"
+}
+```
+
+
+
+
```groovy
plugins {
- id "org.jetbrains.kotlin.plugin.jpa" version "%kotlinVersion%"
+ id "org.jetbrains.kotlin.plugin.jpa" version "%kotlinVersion%"
}
```
+
+
+
In Maven, enable the `jpa` plugin:
```xml