# PublishingOptions

[View Source](https://cs.android.com/search?q=file:com/android/build/api/dsl/PublishingOptions.kt+class:com.android.build.api.dsl.PublishingOptions) Added in 7.1.0


```
interface PublishingOptions
```

<br />

Known direct subclasses [MultipleVariants](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/MultipleVariants), [SingleVariant](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/SingleVariant)

|---|---|
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/MultipleVariants` | Multi variant publishing options. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/SingleVariant` | Single variant publishing options. |

Known indirect subclasses [ApplicationSingleVariant](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/ApplicationSingleVariant), [LibrarySingleVariant](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/LibrarySingleVariant)

|---|---|
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/ApplicationSingleVariant` | Single variant publishing options for application projects. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/LibrarySingleVariant` | Single variant publishing options for library projects. |

*** ** * ** ***

Maven publishing options shared by `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/SingleVariant` and `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/MultipleVariants`.

To publish sources \& javadoc jar apart from AAR, use `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/PublishingOptions#withSourcesJar()` and `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/PublishingOptions#withJavadocJar()`. The following sets up publishing of sources \& javadoc jar in two different publishing mechanisms.

```
android {
    publishing {
        singleVariant("release") {
            withSourcesJar()
            withJavadocJar()
        }

        multipleVariants {
            withSourcesJar()
            withJavadocJar()
            allVariants()
        }
    }
}
```

## Summary

| ### Public functions |
|---|---|
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/PublishingOptions#withJavadocJar()()` Publish javadoc jar generated from java \& kotlin source as a secondary artifact to a Maven repository. |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/PublishingOptions#withSourcesJar()()` Publish java \& kotlin sources jar as a secondary artifact to a Maven repository. |

## Public functions

### withJavadocJar

Added in 7.1.0

```
fun withJavadocJar(): Unit
```

Publish javadoc jar generated from java \& kotlin source as a secondary artifact to a Maven repository.

### withSourcesJar

Added in 7.1.0

```
fun withSourcesJar(): Unit
```

Publish java \& kotlin sources jar as a secondary artifact to a Maven repository.