Skip to content

liutikas/gmm-wiki

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 

Repository files navigation

Documentation of Gradle Module Metadata, Attributes, and Rules

The Gradle dependency resolution algorithm is complex.

This repository aims to document how different attributes are used so that best practices can emerge.

If you are a plugin author, please contribute to this repository by documenting how your plugin uses attributes.

Known attributes

From Gradle

  • org.gradle.usage
    • Source code
    • Documentation
    • Setting this attribute is strongly recommended.
    • If developing a third party plugin that needs to avoid clashing with other attributes, using reverse DNS naming is recommended.
    • Gradle known values
      • java-runtime
      • java-api
      • kotlin-metadata
      • kotlin-api
      • cplusplus-api
      • native-link
      • native-runtime
      • swift-api
      • version-catalog
    • Example third party value
      • com.example.usage.metadata
  • org.gradle.category
    • Source code
    • Documentation
    • Setting this attribute is strongly recommended.
    • If developing a third party plugin that needs to avoid clashing with other attributes, using reverse DNS naming is recommended.
    • Gradle known values
      • documentation
      • library
      • platform
      • enforced-platform
      • verification
    • Example third party value
      • com.example.category.metadata
  • org.gradle.dependency.bundling
  • org.gradle.docstype
  • org.gradle.libraryelements
    • Source code
    • Documentation
    • Known values
      • aar
      • jar
      • classes
      • resources
      • classes+resources
      • headers-cplusplus
      • link-archive
      • objects
      • dynamic-lib
  • org.gradle.jvm.environment
  • org.gradle.jvm.version
  • artifactType
    • Source code
    • Documentation
    • Known values
      • jar
      • java-classes-directory
      • java-resources-directory
      • zip
      • directory
      • binary
      • android-aar-metadata (from Android)
      • android-art-profile (from Android)
      • android-assets (from Android)
      • android-classes-directory (from Android)
      • android-classes-jar (from Android)
      • android-compiled-dependencies-resources (from Android)
      • android-consumer-proguard-rules (from Android)
      • android-java-res (from Android)
      • android-jni (from Android)
      • android-lint (from Android)
      • android-lint-local-aar (from Android)
      • android-lint-model-metadata (from Android)
      • ...

From Native Ecosystem

  • org.gradle.native.debuggable : boolean
  • org.gradle.native.optimized :boolean
  • org.gradle.native.architecture
    • Known values
      • x86
      • x86-64
      • aarch64
  • org.gradle.native.operatingSystem
    • Known values
      • windows
      • linux
      • macos

From Kotlin Gradle Plugin

  • org.jetbrains.kotlin.platform.type
  • org.jetbrains.kotlin.native.target
    • Source code
    • Known values
      • android_arm32
      • android_arm64
      • android_x64
      • android_x86
      • ios_arm64
      • ios_simulator_arm64
      • ios_x64
      • linux_arm64
      • linux_x64
      • macos_arm64
      • macos_x64
      • mingw_x64
      • tvos_arm64
      • tvos_simulator_arm64
      • tvos_x64
      • watchos_arm32
      • watchos_arm64
      • watchos_device_arm64
      • watchos_simulator_arm64
      • watchos_x64
  • org.jetbrains.kotlin.js.compiler
  • org.jetbrains.kotlin.wasm.target

From Kotlin Resources Plugin

  • dev.opensavvy.resources
    • Source code
    • Documentation
    • Known values
      • Regular
    • Must be used alongside
      • org.gradle.category
      • org.gradle.libraryelements
      • org.jetbrains.kotlin.platform.type
      • org.jetbrains.kotlin.native.target
  • javaModule : boolean

About

Documentation of Gradle Module Metadata, Attributes, and Rules

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors