1 | initial version |
To produce TypeScript definitions using Maven from Kotlin DTO, you can use the kotlin2typescript-maven-plugin
.
Here are the steps:
pom.xml
file:<build>
<plugins>
<plugin>
<groupId>com.github.d3adspace.kotlin</groupId>
<artifactId>kotlin2typescript-maven-plugin</artifactId>
<version>2.5.8</version>
<executions>
<execution>
<id>generate-typescript</id>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>com.example</groupId>
<artifactId>my-dto</artifactId>
<version>1.0.0</version>
</dependency>
</dependencies>
configuration
section of the plugin:<plugin>
<groupId>com.github.d3adspace.kotlin</groupId>
<artifactId>kotlin2typescript-maven-plugin</artifactId>
<version>2.5.8</version>
<executions>
<execution>
<id>generate-typescript</id>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
<configuration>
<dtoPackages>
<param>com.example.mydto</param>
</dtoPackages>
<generatedSourcesTargetPath>src/main/webapp/ts</generatedSourcesTargetPath>
</configuration>
</plugin>
mvn clean install
This will generate the TypeScript definitions in the src/main/webapp/ts
directory.
Note: The kotlin2typescript-maven-plugin
also supports generating Enum classes as TypeScript enums. You can configure this in the configuration
section of the plugin by setting the enumPackages
parameter with packages that contain your Enum classes.