@@ -138,26 +138,32 @@ public abstract class AbstractCompilerMojo extends AbstractMojo {
138
138
139
139
/**
140
140
* Set to <code>true</code> to include debugging information in the compiled class files.
141
+ * @see <a href="https://docs.oracle.com/en/java/javase/17/docs/specs/man/javac.html#option-g">javac -g</a>
142
+ * @see #debuglevel
141
143
*/
142
144
@ Parameter (property = "maven.compiler.debug" , defaultValue = "true" )
143
145
private boolean debug = true ;
144
146
145
147
/**
146
148
* Set to <code>true</code> to generate metadata for reflection on method parameters.
147
149
* @since 3.6.2
150
+ * @see <a href="https://docs.oracle.com/en/java/javase/17/docs/specs/man/javac.html#option-parameters">javac -parameters</a>
148
151
*/
149
152
@ Parameter (property = "maven.compiler.parameters" , defaultValue = "false" )
150
153
private boolean parameters ;
151
154
152
155
/**
153
- * Set to <code>true</code> to Enable preview language features of the java compiler
156
+ * Set to <code>true</code> to enable preview language features of the java compiler
154
157
* @since 3.10.1
158
+ * @see <a href="https://docs.oracle.com/en/java/javase/17/docs/specs/man/javac.html#option-enable-preview">javac --enable-preview</a>
155
159
*/
156
160
@ Parameter (property = "maven.compiler.enablePreview" , defaultValue = "false" )
157
161
private boolean enablePreview ;
158
162
159
163
/**
160
164
* Set to <code>true</code> to show messages about what the compiler is doing.
165
+ *
166
+ * @see <a href="https://docs.oracle.com/en/java/javase/17/docs/specs/man/javac.html#option-verbose">javac -verbose</a>
161
167
*/
162
168
@ Parameter (property = "maven.compiler.verbose" , defaultValue = "false" )
163
169
private boolean verbose ;
@@ -183,39 +189,44 @@ public abstract class AbstractCompilerMojo extends AbstractMojo {
183
189
private boolean showWarnings ;
184
190
185
191
/**
186
- * <p>The -source argument for the Java compiler.</p>
192
+ * <p>The {@code -source} argument for the Java compiler.</p>
187
193
*
188
194
* <p><b>NOTE: </b></p>
189
195
* <p>Since 3.8.0 the default value has changed from 1.5 to 1.6</p>
190
196
* <p>Since 3.9.0 the default value has changed from 1.6 to 1.7</p>
191
197
* <p>Since 3.11.0 the default value has changed from 1.7 to 1.8</p>
198
+ * @see <a href="https://docs.oracle.com/en/java/javase/17/docs/specs/man/javac.html#option-source">javac -source</a>
192
199
*/
193
200
@ Parameter (property = "maven.compiler.source" , defaultValue = DEFAULT_SOURCE )
194
201
protected String source ;
195
202
196
203
/**
197
- * <p>The -target argument for the Java compiler.</p>
204
+ * <p>The {@code -target} argument for the Java compiler.</p>
198
205
*
199
206
* <p><b>NOTE: </b></p>
200
207
* <p>Since 3.8.0 the default value has changed from 1.5 to 1.6</p>
201
208
* <p>Since 3.9.0 the default value has changed from 1.6 to 1.7</p>
202
209
* <p>Since 3.11.0 the default value has changed from 1.7 to 1.8</p>
210
+ *
211
+ * @see <a href="https://docs.oracle.com/en/java/javase/17/docs/specs/man/javac.html#option-target">javac -target</a>
203
212
*/
204
213
@ Parameter (property = "maven.compiler.target" , defaultValue = DEFAULT_TARGET )
205
214
protected String target ;
206
215
207
216
/**
208
- * The -release argument for the Java compiler, supported since Java9
217
+ * The {@code -release} argument for the Java compiler, supported since Java9
209
218
*
210
219
* @since 3.6
220
+ * @see <a href="https://docs.oracle.com/en/java/javase/17/docs/specs/man/javac.html#option-release">javac -release</a>
211
221
*/
212
222
@ Parameter (property = "maven.compiler.release" )
213
223
protected String release ;
214
224
215
225
/**
216
- * The -encoding argument for the Java compiler.
226
+ * The {@code -encoding} argument for the Java compiler.
217
227
*
218
228
* @since 2.1
229
+ * @see <a href="https://docs.oracle.com/en/java/javase/17/docs/specs/man/javac.html#option-encoding">javac -encoding</a>
219
230
*/
220
231
@ Parameter (property = "encoding" , defaultValue = "${project.build.sourceEncoding}" )
221
232
private String encoding ;
@@ -286,6 +297,8 @@ public abstract class AbstractCompilerMojo extends AbstractMojo {
286
297
* </ul>
287
298
*
288
299
* @since 2.2
300
+ * @see <a href="https://docs.oracle.com/en/java/javase/17/docs/specs/man/javac.html#option-proc">javac -proc</a>
301
+ * @see <a href="https://docs.oracle.com/en/java/javase/17/docs/specs/man/javac.html#annotation-processing">javac Annotation Processing</a>
289
302
*/
290
303
@ Parameter
291
304
private String proc ;
@@ -297,6 +310,8 @@ public abstract class AbstractCompilerMojo extends AbstractMojo {
297
310
* </p>
298
311
*
299
312
* @since 2.2
313
+ * @see <a href="https://docs.oracle.com/en/java/javase/17/docs/specs/man/javac.html#option-processor">javac -processor</a>
314
+ * @see <a href="https://docs.oracle.com/en/java/javase/17/docs/specs/man/javac.html#annotation-processing">javac Annotation Processing</a>
300
315
*/
301
316
@ Parameter
302
317
private String [] annotationProcessors ;
@@ -335,6 +350,9 @@ public abstract class AbstractCompilerMojo extends AbstractMojo {
335
350
* <b>Note:</b> Exclusions are supported from version 3.11.0.
336
351
*
337
352
* @since 3.5
353
+ * @see <a href="https://docs.oracle.com/en/java/javase/17/docs/specs/man/javac.html#option-processor-path">javac -processorpath</a>
354
+ * @see <a href="https://docs.oracle.com/en/java/javase/17/docs/specs/man/javac.html#annotation-processing">javac Annotation Processing</a>
355
+ *
338
356
*/
339
357
@ Parameter
340
358
private List <DependencyCoordinate > annotationProcessorPaths ;
@@ -346,7 +364,7 @@ public abstract class AbstractCompilerMojo extends AbstractMojo {
346
364
* </p>
347
365
* <p>
348
366
* This flag does not enable / disable the ability to resolve the version of annotation processor paths
349
- * from dependency management section. It only influences the resolution o transitive dependencies of those
367
+ * from dependency management section. It only influences the resolution of transitive dependencies of those
350
368
* top-level paths.
351
369
* </p>
352
370
*
@@ -403,6 +421,7 @@ public abstract class AbstractCompilerMojo extends AbstractMojo {
403
421
* </pre>
404
422
*
405
423
* @since 3.1
424
+ * @see <a href="https://docs.oracle.com/en/java/javase/17/docs/specs/man/javac.html#option-J">javac -J</a>
406
425
*/
407
426
@ Parameter
408
427
protected List <String > compilerArgs ;
@@ -418,6 +437,7 @@ public abstract class AbstractCompilerMojo extends AbstractMojo {
418
437
* <p>
419
438
* Note that {@code -J} options are only passed through if {@link #fork} is set to {@code true}.
420
439
* </p>
440
+ * @see <a href="https://docs.oracle.com/en/java/javase/17/docs/specs/man/javac.html#option-J">javac -J</a>
421
441
*/
422
442
@ Parameter
423
443
protected String compilerArgument ;
@@ -435,9 +455,10 @@ public abstract class AbstractCompilerMojo extends AbstractMojo {
435
455
* Keyword list to be appended to the <code>-g</code> command-line switch. Legal values are none or a
436
456
* comma-separated list of the following keywords: <code>lines</code>, <code>vars</code>, and <code>source</code>.
437
457
* If debug level is not specified, by default, nothing will be appended to <code>-g</code>.
438
- * If debug is not turned on, this attribute will be ignored.
458
+ * If {@link # debug} is not turned on, this attribute will be ignored.
439
459
*
440
460
* @since 2.1
461
+ * @see <a href="https://docs.oracle.com/en/java/javase/17/docs/specs/man/javac.html#option-g-custom">javac -G:[lines,vars,source]</a>
441
462
*/
442
463
@ Parameter (property = "maven.compiler.debuglevel" )
443
464
private String debuglevel ;
@@ -446,6 +467,7 @@ public abstract class AbstractCompilerMojo extends AbstractMojo {
446
467
* Keyword to be appended to the <code>-implicit:</code> command-line switch.
447
468
*
448
469
* @since 3.10.2
470
+ * @see <a href="https://docs.oracle.com/en/java/javase/17/docs/specs/man/javac.html#option-implicit">javac -implicit</a>
449
471
*/
450
472
@ Parameter (property = "maven.compiler.implicit" )
451
473
private String implicit ;
@@ -546,8 +568,10 @@ public abstract class AbstractCompilerMojo extends AbstractMojo {
546
568
private boolean skipMultiThreadWarning ;
547
569
548
570
/**
549
- * compiler can now use javax.tools if available in your current jdk, you can disable this feature
550
- * using -Dmaven.compiler.forceJavacCompilerUse=true or in the plugin configuration
571
+ * The underlying compiler now uses <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.compiler/javax/tools/package-summary.html">{@code javax.tools} API</a>
572
+ * if available in your current JDK.
573
+ * Set this to {@code true} to always use the legacy <a href="https://docs.oracle.com/en/java/javase/17/docs/api/jdk.compiler/com/sun/tools/javac/package-summary.html">
574
+ * {@code com.sun.tools.javac} API</a> instead.
551
575
*
552
576
* @since 3.0
553
577
*/
0 commit comments