# CompileOptions

# CompileOptions


```
public interface CompileOptions
```

<br />

*** ** * ** ***

Java compilation options.

## Summary

|                                                                                                 ### Public methods                                                                                                  |
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `abstract @`[NonNull](https://developer.android.com/reference/tools/gradle-api/8.3/null/androidx/annotation/NonNull)` `[String](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html) | [getEncoding](https://developer.android.com/reference/tools/gradle-api/8.3/null/com/android/build/api/dsl/CompileOptions#getEncoding())`()` Java source files encoding.                                                                                                                                                                                                                                                                                     |
| `abstract @`[NonNull](https://developer.android.com/reference/tools/gradle-api/8.3/null/androidx/annotation/NonNull)` `[JavaVersion](https://docs.gradle.org/current/javadoc/org/gradle/api/JavaVersion.html)       | [getSourceCompatibility](https://developer.android.com/reference/tools/gradle-api/8.3/null/com/android/build/api/dsl/CompileOptions#getSourceCompatibility())`()` Language level of the java source code.                                                                                                                                                                                                                                                   |
| `abstract @`[NonNull](https://developer.android.com/reference/tools/gradle-api/8.3/null/androidx/annotation/NonNull)` `[JavaVersion](https://docs.gradle.org/current/javadoc/org/gradle/api/JavaVersion.html)       | [getTargetCompatibility](https://developer.android.com/reference/tools/gradle-api/8.3/null/com/android/build/api/dsl/CompileOptions#getTargetCompatibility())`()` Version of the generated Java bytecode.                                                                                                                                                                                                                                                   |
| `abstract boolean`                                                                                                                                                                                                  | [isCoreLibraryDesugaringEnabled](https://developer.android.com/reference/tools/gradle-api/8.3/null/com/android/build/api/dsl/CompileOptions#getIsCoreLibraryDesugaringEnabled())`()` Whether core library desugaring is enabled.                                                                                                                                                                                                                            |
| `abstract void`                                                                                                                                                                                                     | [setCoreLibraryDesugaringEnabled](https://developer.android.com/reference/tools/gradle-api/8.3/null/com/android/build/api/dsl/CompileOptions#setIsCoreLibraryDesugaringEnabled(kotlin.Boolean))`(` ` boolean isCoreLibraryDesugaringEnabled` `)` Whether core library desugaring is enabled.                                                                                                                                                                |
| `abstract void`                                                                                                                                                                                                     | [setEncoding](https://developer.android.com/reference/tools/gradle-api/8.3/null/com/android/build/api/dsl/CompileOptions#setEncoding(kotlin.String))`(@`[NonNull](https://developer.android.com/reference/tools/gradle-api/8.3/null/androidx/annotation/NonNull)` `[String](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html)` encoding)` Java source files encoding.                                                     |
| `abstract void`                                                                                                                                                                                                     | [setSourceCompatibility](https://developer.android.com/reference/tools/gradle-api/8.3/null/com/android/build/api/dsl/CompileOptions#setSourceCompatibility(org.gradle.api.JavaVersion))`(@`[NonNull](https://developer.android.com/reference/tools/gradle-api/8.3/null/androidx/annotation/NonNull)` `[JavaVersion](https://docs.gradle.org/current/javadoc/org/gradle/api/JavaVersion.html)` sourceCompatibility)` Language level of the java source code. |
| `abstract void`                                                                                                                                                                                                     | [setTargetCompatibility](https://developer.android.com/reference/tools/gradle-api/8.3/null/com/android/build/api/dsl/CompileOptions#setTargetCompatibility(org.gradle.api.JavaVersion))`(@`[NonNull](https://developer.android.com/reference/tools/gradle-api/8.3/null/androidx/annotation/NonNull)` `[JavaVersion](https://docs.gradle.org/current/javadoc/org/gradle/api/JavaVersion.html)` targetCompatibility)` Version of the generated Java bytecode. |
| `abstract void`                                                                                                                                                                                                     | [sourceCompatibility](https://developer.android.com/reference/tools/gradle-api/8.3/null/com/android/build/api/dsl/CompileOptions#sourceCompatibility(kotlin.Any))`(@`[NonNull](https://developer.android.com/reference/tools/gradle-api/8.3/null/androidx/annotation/NonNull)` `[Object](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html)` sourceCompatibility)` Language level of the java source code.                 |
| `abstract void`                                                                                                                                                                                                     | [targetCompatibility](https://developer.android.com/reference/tools/gradle-api/8.3/null/com/android/build/api/dsl/CompileOptions#targetCompatibility(kotlin.Any))`(@`[NonNull](https://developer.android.com/reference/tools/gradle-api/8.3/null/androidx/annotation/NonNull)` `[Object](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html)` targetCompatibility)` Version of the generated Java bytecode.                 |

## Public methods

### getEncoding

```
abstract @NonNull String getEncoding()
```

Java source files encoding.  

### getSourceCompatibility

```
abstract @NonNull JavaVersion getSourceCompatibility()
```

Language level of the java source code.

Similar to what [Gradle Java plugin](http://www.gradle.org/docs/current/userguide/java_plugin.html) uses. Formats supported are:

- `"1.6"`

- `1.6`

- `JavaVersion.Version_1_6`

- `"Version_1_6"`

### getTargetCompatibility

```
abstract @NonNull JavaVersion getTargetCompatibility()
```

Version of the generated Java bytecode.

Similar to what [Gradle Java plugin](http://www.gradle.org/docs/current/userguide/java_plugin.html) uses. Formats supported are:

- `"1.6"`

- `1.6`

- `JavaVersion.Version_1_6`

- `"Version_1_6"`

### isCoreLibraryDesugaringEnabled

```
abstract boolean isCoreLibraryDesugaringEnabled()
```

Whether core library desugaring is enabled.  

### setCoreLibraryDesugaringEnabled

```
abstract void setCoreLibraryDesugaringEnabled(
    boolean isCoreLibraryDesugaringEnabled
)
```

Whether core library desugaring is enabled.  

### setEncoding

```
abstract void setEncoding(@NonNull String encoding)
```

Java source files encoding.  

### setSourceCompatibility

```
abstract void setSourceCompatibility(@NonNull JavaVersion sourceCompatibility)
```

Language level of the java source code.

Similar to what [Gradle Java plugin](http://www.gradle.org/docs/current/userguide/java_plugin.html) uses. Formats supported are:

- `"1.6"`

- `1.6`

- `JavaVersion.Version_1_6`

- `"Version_1_6"`

### setTargetCompatibility

```
abstract void setTargetCompatibility(@NonNull JavaVersion targetCompatibility)
```

Version of the generated Java bytecode.

Similar to what [Gradle Java plugin](http://www.gradle.org/docs/current/userguide/java_plugin.html) uses. Formats supported are:

- `"1.6"`

- `1.6`

- `JavaVersion.Version_1_6`

- `"Version_1_6"`

### sourceCompatibility

```
abstract void sourceCompatibility(@NonNull Object sourceCompatibility)
```

Language level of the java source code.

Similar to what [Gradle Java plugin](http://www.gradle.org/docs/current/userguide/java_plugin.html) uses. Formats supported are:

- `"1.6"`

- `1.6`

- `JavaVersion.Version_1_6`

- `"Version_1_6"`

### targetCompatibility

```
abstract void targetCompatibility(@NonNull Object targetCompatibility)
```

Version of the generated Java bytecode.

Similar to what [Gradle Java plugin](http://www.gradle.org/docs/current/userguide/java_plugin.html) uses. Formats supported are:

- `"1.6"`

- `1.6`

- `JavaVersion.Version_1_6`

- `"Version_1_6"`