# java

{% dynamic setvar source_file "src/main/java/com/google/devtools/build/lib/starlarkbuildapi/java/JavaConfigurationApi.java" %} {% dynamic setvar version "7.6.0" %} {% dynamic setvar original_path "/rules/lib/fragments/java" %} {% include "_buttons.html" %} A java compiler configuration.

## Members

- bytecode_optimization_pass_actions
- bytecode_optimizer_mnemonic
- default_javac_flags
- default_javac_flags_depset
- default_jvm_opts
- disallow_java_import_empty_jars
- disallow_java_import_exports
- multi_release_deploy_jars
- one_version_enforcement_level
- plugins
- run_android_lint
- split_bytecode_optimization_pass
- strict_java_deps
- use_ijars

## bytecode_optimization_pass_actions

    int java.bytecode_optimization_pass_actions

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.

## bytecode_optimizer_mnemonic

    string java.bytecode_optimizer_mnemonic

The mnemonic for the bytecode optimizer.

## default_javac_flags

    list java.default_javac_flags

The default flags for the Java compiler.

## default_javac_flags_depset

    depset java.default_javac_flags_depset

The default flags for the Java compiler.

## default_jvm_opts

    list java.default_jvm_opts

Additional options to pass to the Java VM for each java_binary target

## disallow_java_import_empty_jars

    bool java.disallow_java_import_empty_jars()

Returns true if empty java_import jars are not allowed.

## disallow_java_import_exports

    bool java.disallow_java_import_exports()

Returns true if java_import exports are not allowed.

## multi_release_deploy_jars

    bool java.multi_release_deploy_jars

The value of the --incompatible_multi_release_deploy_jars flag.

## one_version_enforcement_level

    string java.one_version_enforcement_level

The value of the --experimental_one_version_enforcement flag.

## plugins

    list java.plugins

A list containing the labels provided with --plugins, if any.

## run_android_lint

    bool java.run_android_lint

The value of the --experimental_run_android_lint_on_java_rules flag.

## split_bytecode_optimization_pass

    bool java.split_bytecode_optimization_pass

Returns whether the OPTIMIZATION stage of the bytecode optimizer will be split across two actions.

## strict_java_deps

    string java.strict_java_deps

The value of the strict_java_deps flag.

## use_ijars

    bool java.use_ijars()

Returns true iff Java compilation should use ijars.