Using in Maven ProjectsΒΆ
The annotation processor should run aromatically if jtsgen-processor is in the class path. Please note, that it is
not advised making the processor transitive dependent in you project. Use either the provided or optional scope
to break the dependency tree at this point. If it is necessary creating the TypesScript files in different location,
the following strategies might solve this problem depending on the version of the maven-compiler plugin:
- for versions >= 2.2: maybe
annotationProcessorscould be useful- for versions >= 2.2: with
generatedSourcesDirectorythe ouput path of the generated source files can be changed- for versions >= 3.1: using
compilerArgsthe annotation processor can be fed with additional Processing Parameters- for versions >= 3.5: with
annotationProcessorPathsthe processor could be completely removed from the dependency tree
For a full set of options you should take a look at the manual of the Maven Compiler Plugin.
The following full example generates the typescript files in ../client/src and logs some info debug messages
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>jtsgen-example</groupId>
<artifactId>api</artifactId>
<version>1.0.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>com.github.dzuvic</groupId>
<artifactId>jtsgen-processor</artifactId>
<version>0.4.0</version>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.3</version>
<configuration>
<compilerVersion>1.8</compilerVersion>
<source>1.8</source>
<target>1.8</target>
<generatedSourcesDirectory>../client/src</generatedSourcesDirectory>
<compilerArgs>
<arg>-AjtsgenLogLevel=info</arg>
</compilerArgs>
</configuration>
</plugin>
</plugins>
</build>
</project>