docs/versions/7.3.0/rules/lib/fragments/java.mdx
{% dynamic setvar source_file "src/main/java/com/google/devtools/build/lib/starlarkbuildapi/java/JavaConfigurationApi.java" %} {% dynamic setvar version "7.3.0" %} {% dynamic setvar original_path "/rules/lib/fragments/java" %} {% include "_buttons.html" %}
<!-- {% raw %} -->A java compiler configuration.
<h2>Members</h2> <ul> <li> <a href="#bytecode_optimization_pass_actions">bytecode_optimization_pass_actions</a> </li> <li> <a href="#bytecode_optimizer_mnemonic">bytecode_optimizer_mnemonic</a> </li> <li> <a href="#default_javac_flags">default_javac_flags</a> </li> <li> <a href="#default_javac_flags_depset">default_javac_flags_depset</a> </li> <li> <a href="#default_jvm_opts">default_jvm_opts</a> </li> <li> <a href="#disallow_java_import_empty_jars">disallow_java_import_empty_jars</a> </li> <li> <a href="#disallow_java_import_exports">disallow_java_import_exports</a> </li> <li> <a href="#multi_release_deploy_jars">multi_release_deploy_jars</a> </li> <li> <a href="#one_version_enforcement_level">one_version_enforcement_level</a> </li> <li> <a href="#plugins">plugins</a> </li> <li> <a href="#run_android_lint">run_android_lint</a> </li> <li> <a href="#split_bytecode_optimization_pass">split_bytecode_optimization_pass</a> </li> <li> <a href="#strict_java_deps">strict_java_deps</a> </li> <li> <a href="#use_ijars">use_ijars</a> </li> </ul> <h2 id="bytecode_optimization_pass_actions">bytecode_optimization_pass_actions</h2>
<p><pre class="rule-signature"><a class="anchor" href="../core/int.html">int</a> java.bytecode_optimization_pass_actions</pre></p>
This specifies the number of actions to divide the OPTIMIZATION stage of the bytecode optimizer into. Note that if split_bytecode_optimization_pass is set, this will only change behavior if it is > 2.
<h2 id="bytecode_optimizer_mnemonic">bytecode_optimizer_mnemonic</h2>
<p><pre class="rule-signature"><a class="anchor" href="../core/string.html">string</a> java.bytecode_optimizer_mnemonic</pre></p>
The mnemonic for the bytecode optimizer.
<h2 id="default_javac_flags">default_javac_flags</h2>
<p><pre class="rule-signature"><a class="anchor" href="../core/list.html">list</a> java.default_javac_flags</pre></p>
The default flags for the Java compiler.
<h2 id="default_javac_flags_depset">default_javac_flags_depset</h2>
<p><pre class="rule-signature"><a class="anchor" href="../builtins/depset.html">depset</a> java.default_javac_flags_depset</pre></p>
The default flags for the Java compiler.
<h2 id="default_jvm_opts">default_jvm_opts</h2>
<p><pre class="rule-signature"><a class="anchor" href="../core/list.html">list</a> java.default_jvm_opts</pre></p>
Additional options to pass to the Java VM for each java_binary target
<h2 id="disallow_java_import_empty_jars">disallow_java_import_empty_jars</h2>
<p><pre class="rule-signature"><a class="anchor" href="../core/bool.html">bool</a> java.disallow_java_import_empty_jars()</pre></p>
Returns true if empty java_import jars are not allowed.
<h2 id="disallow_java_import_exports">disallow_java_import_exports</h2>
<p><pre class="rule-signature"><a class="anchor" href="../core/bool.html">bool</a> java.disallow_java_import_exports()</pre></p>
Returns true if java_import exports are not allowed.
<h2 id="multi_release_deploy_jars">multi_release_deploy_jars</h2>
<p><pre class="rule-signature"><a class="anchor" href="../core/bool.html">bool</a> java.multi_release_deploy_jars</pre></p>
The value of the --incompatible_multi_release_deploy_jars flag.
<h2 id="one_version_enforcement_level">one_version_enforcement_level</h2>
<p><pre class="rule-signature"><a class="anchor" href="../core/string.html">string</a> java.one_version_enforcement_level</pre></p>
The value of the --experimental_one_version_enforcement flag.
<h2 id="plugins">plugins</h2>
<p><pre class="rule-signature"><a class="anchor" href="../core/list.html">list</a> java.plugins</pre></p>
A list containing the labels provided with --plugins, if any.
<h2 id="run_android_lint">run_android_lint</h2>
<p><pre class="rule-signature"><a class="anchor" href="../core/bool.html">bool</a> java.run_android_lint</pre></p>
The value of the --experimental_run_android_lint_on_java_rules flag.
<h2 id="split_bytecode_optimization_pass">split_bytecode_optimization_pass</h2>
<p><pre class="rule-signature"><a class="anchor" href="../core/bool.html">bool</a> java.split_bytecode_optimization_pass</pre></p>
Returns whether the OPTIMIZATION stage of the bytecode optimizer will be split across two actions.
<h2 id="strict_java_deps">strict_java_deps</h2>
<p><pre class="rule-signature"><a class="anchor" href="../core/string.html">string</a> java.strict_java_deps</pre></p>
The value of the strict_java_deps flag.
<h2 id="use_ijars">use_ijars</h2>
<p><pre class="rule-signature"><a class="anchor" href="../core/bool.html">bool</a> java.use_ijars()</pre></p>
Returns true iff Java compilation should use ijars.