编译器:编译

全名

org.apache.maven.plugins:maven-compiler-plugin:2.4:compile

说明

编译应用程序源

属性

  • 需要执行一个 Maven 项目。
  • 需要范围内工件的依赖解析:compile
  • 目标是线程安全的并支持并行构建。
  • 自版本:2.0
  • 默认绑定到生命周期阶段:compile

可选参数

姓名 类型 自从 描述
注释处理器 细绳[] 2.2

要运行的注释处理器的名称。仅适用于 JDK 1.6+ 如果未设置,则应用默认注释处理器发现过程。


compiler参数 细绳 2.0

如果fork设置为true ,则设置要传递给编译器的未格式化的单个参数字符串。要传递多个参数,例如-Xmaxerrs 1000(实际上是两个参数),您必须使用 compilerArguments

这是因为传递给 Java 编译器的有效参数列表因编译器版本而异。


compilerArguments 地图 2.0.1

如果fork设置为true ,则设置要传递给编译器的参数(添加破折号)。

这是因为传递给 Java 编译器的有效参数列表因编译器版本而异。

要通过-Xmaxerrs 1000 -Xlint -Xlint:-path -Averbose=true你应该包括以下内容:

<compilerArguments>
  <Xmaxerrs>1000</Xmaxerrs>
  <Xlint/>
  <Xlint:-path/>
  <Averbose>true</Averbose>
</compilerArguments>

编译器 ID 细绳 2.0 要使用的编译器的编译器 ID。有关更多信息,请参阅本指南
默认值为javac
编译器版本 细绳 2.0 要使用的编译器版本,例如。“1.3”、“1.5”,如果 fork设置为true
调试 布尔值 2.0 设置为true以在编译的类文件中包含调试信息。
默认值为true
调试级别 细绳 2.1 要附加到 -g 命令行开关的关键字列表。合法值是 none 或以下关键字的逗号分隔列表:lines、vars 和 source。如果未指定 debuglevel,默认情况下,不会将任何内容附加到 -g。如果未打开调试,则该属性将被忽略。
编码 细绳 2.1 Java 编译器的 -encoding 参数。
默认值为${project.build.sourceEncoding}
排除 2.0 编译器的排除过滤器列表。
可执行的 细绳 2.0 设置当forktrue时要使用的编译器的可执行文件。
失败错误 布尔值 2.0.2 指示即使出现编译错误,构建是否会继续。
默认值为true
布尔值 2.0 允许在单独的进程中运行编译器。如果 为,则使用内置编译器,如果 为,则使用可执行文件。
默认值为false
生成的Sources目录 文件 2.2

指定放置由注释处理创建的生成源文件的位置。仅适用于 JDK 1.6+


默认值为${project.build.directory}/generated-sources/annotations
包括 2.0 编译器的包含过滤器列表。
最大内存 细绳 2.0.1 设置内存分配池的最大大小,以兆字节为单位,例如。"128", "128m" 如果fork设置为true
仿古 细绳 2.0.1 内存分配池的初始大小(以 MB 为单位),例如。"64", "64m" 如果fork设置为true
优化 布尔值 2.0 设置为true以使用编译器的优化方法优化编译的代码。
默认值为false
输出文件名 细绳 2.0 将一组源编译为单个文件时设置输出文件的名称。
过程 细绳 2.2

设置是否执行注释处理。仅适用于 JDK 1.6+ 如果不设置,编译和注解处理同时进行。

允许的值为: none - 不执行注释处理。only - 只进行注解处理,不进行编译。


显示弃用 布尔值 2.0 设置是否显示使用已弃用 API 的源位置。
默认值为false
显示警告 布尔值 2.0 设置为true以显示编译警告。
默认值为false
资源 细绳 2.0 Java 编译器的 -source 参数。
默认值为1.5
陈旧的米利斯 整数 2.0 设置最后修改日期的粒度(以毫秒为单位),以测试源是否需要重新编译。
默认值为0
目标 细绳 2.0 Java 编译器的 -target 参数。
默认值为1.5
冗长的 布尔值 2.0 设置为true以显示有关编译器正在做什么的消息。
默认值为false

参数详情

注释处理器

要运行的注释处理器的名称。仅适用于 JDK 1.6+ 如果未设置,则应用默认注释处理器发现过程。

  • 类型java.lang.String[]
  • : 2.2
  • 要求

编译器参数

如果fork设置为true ,则设置要传递给编译器的未格式化的单个参数字符串。要传递多个参数,例如-Xmaxerrs 1000(实际上是两个参数),您必须使用 compilerArguments

这是因为传递给 Java 编译器的有效参数列表因编译器版本而异。

  • 类型java.lang.String
  • : 2.0
  • 要求

编译器参数

如果fork设置为true ,则设置要传递给编译器的参数(添加破折号)。

这是因为传递给 Java 编译器的有效参数列表因编译器版本而异。

要通过-Xmaxerrs 1000 -Xlint -Xlint:-path -Averbose=true你应该包括以下内容:

<compilerArguments>
  <Xmaxerrs>1000</Xmaxerrs>
  <Xlint/>
  <Xlint:-path/>
  <Averbose>true</Averbose>
</compilerArguments>
  • 类型java.util.Map
  • 2.0.1
  • 要求

编译器标识

要使用的编译器的编译器 ID。有关更多信息,请参阅本指南
  • 类型java.lang.String
  • : 2.0
  • 要求
  • 表达式${maven.compiler.compilerId}
  • 默认值javac

编译器版本

要使用的编译器版本,例如。“1.3”、“1.5”,如果 fork设置为true
  • 类型java.lang.String
  • : 2.0
  • 要求
  • 表达式${maven.compiler.compilerVersion}

调试

设置为true以在编译的类文件中包含调试信息。
  • 类型布尔值
  • : 2.0
  • 要求
  • 表达式${maven.compiler.debug}
  • 默认值

调试级别

要附加到 -g 命令行开关的关键字列表。合法值是 none 或以下关键字的逗号分隔列表:lines、vars 和 source。如果未指定 debuglevel,默认情况下,不会将任何内容附加到 -g。如果未打开调试,则该属性将被忽略。
  • 类型java.lang.String
  • : 2.1
  • 要求
  • 表达式${maven.compiler.debuglevel}

编码

Java 编译器的 -encoding 参数。
  • 类型java.lang.String
  • : 2.1
  • 要求
  • 表达式${编码}
  • 默认值${project.build.sourceEncoding}

不包括

编译器的排除过滤器列表。
  • 类型java.util.Set
  • : 2.0
  • 要求

可执行文件

设置当forktrue时要使用的编译器的可执行文件。
  • 类型java.lang.String
  • : 2.0
  • 要求
  • 表达式${maven.compiler.executable}

失败错误

指示即使出现编译错误,构建是否会继续。
  • 类型布尔值
  • 2.0.2
  • 要求
  • 表达式${maven.compiler.failOnError}
  • 默认值

叉子

允许在单独的进程中运行编译器。如果 为,则使用内置编译器,如果 为,则使用可执行文件。
  • 类型布尔值
  • : 2.0
  • 要求
  • 表达式${maven.compiler.fork}
  • 默认值

生成源目录

指定放置由注释处理创建的生成源文件的位置。仅适用于 JDK 1.6+

  • 类型java.io.File
  • : 2.2
  • 要求
  • 默认值${project.build.directory}/generated-sources/annotations

包括

编译器的包含过滤器列表。
  • 类型java.util.Set
  • : 2.0
  • 要求

最大内存

设置内存分配池的最大大小,以兆字节为单位,例如。"128", "128m" 如果fork设置为true
  • 类型java.lang.String
  • 2.0.1
  • 要求
  • 表达式${maven.compiler.maxmem}

追忆

内存分配池的初始大小(以 MB 为单位),例如。"64", "64m" 如果fork设置为true
  • 类型java.lang.String
  • 2.0.1
  • 要求
  • 表达式${maven.compiler.meminitial}

优化

设置为true以使用编译器的优化方法优化编译的代码。
  • 类型布尔值
  • : 2.0
  • 要求
  • 表达式${maven.compiler.optimize}
  • 默认值

输出文件名

将一组源编译为单个文件时设置输出文件的名称。
  • 类型java.lang.String
  • : 2.0
  • 要求
  • 表达式${project.build.finalName}

过程

设置是否执行注释处理。仅适用于 JDK 1.6+ 如果不设置,编译和注解处理同时进行。

允许的值为: none - 不执行注释处理。only - 只进行注解处理,不进行编译。

  • 类型java.lang.String
  • : 2.2
  • 要求

显示弃用

设置是否显示使用已弃用 API 的源位置。
  • 类型布尔值
  • : 2.0
  • 要求
  • 表达式${maven.compiler.showDeprecation}
  • 默认值

显示警告

设置为true以显示编译警告。
  • 类型布尔值
  • : 2.0
  • 要求
  • 表达式${maven.compiler.showWarnings}
  • 默认值

来源

Java 编译器的 -source 参数。
  • 类型java.lang.String
  • : 2.0
  • 要求
  • 表达式${maven.compiler.source}
  • 默认值1.5

陈旧的米利斯

设置最后修改日期的粒度(以毫秒为单位),以测试源是否需要重新编译。
  • 类型整数
  • : 2.0
  • 要求
  • 表达式${lastModGranularityMs}
  • 默认值0

目标

Java 编译器的 -target 参数。
  • 类型java.lang.String
  • : 2.0
  • 要求
  • 表达式${maven.compiler.target}
  • 默认值1.5

详细

设置为true以显示有关编译器正在做什么的消息。
  • 类型布尔值
  • : 2.0
  • 要求
  • 表达式${maven.compiler.verbose}
  • 默认值