
Shared repository streamlining dependency management and local development setup for projects, enabling seamless package imports and integration within project configurations.
Shared Repository for KMM projects
build.gradle add maven centralallprojects {
repositories {
mavenCentral()
...
}
}shared/build.gradle add the dependencydependencies {
implementation "ch.dreipol:dreimultiplatform:<version>"
}/SOME-DIR/dreimultiplatform (outside of your KMM repository)local.properties add:dreimultiplatform.dir=/SOME-DIR/dreimultiplatformsettings.gradle dynamically include the project if the setting existsProperties properties = new Properties()
File localProperties = new File(rootProject.projectDir.absolutePath + '/local.properties')
if (localProperties.exists()) {
properties.load(localProperties.newDataInputStream())
def dreimultiplatformDir = properties.getProperty('dreimultiplatform.dir')
if (dreimultiplatformDir != null) {
include ':dreimultiplatform'
project(':dreimultiplatform').projectDir = new File(dreimultiplatformDir)
}
}build.gradle add repository url for mavenCentral mavenCentral()shared/build.gradle add the dependency if the local property is set otherwise fetch from JitPackdependencies {
Properties properties = new Properties()
File localProperties = new File(rootProject.projectDir.absolutePath + '/local.properties')
String dreimultiplatformDir = null
if (localProperties.exists()) {
properties.load(localProperties.newDataInputStream())
dreimultiplatformDir = properties.getProperty('dreimultiplatform.dir')
}
if (dreimultiplatformDir != null) {
implementation project (":dreimultiplatform")
} else {
// if the dreimultiplatform local directory is not set we will fetch from bintray
implementation "ch.dreipol:dreimultiplatform:<tag or latest commit-short on develop>"
}
}Shared Repository for KMM projects
build.gradle add maven centralallprojects {
repositories {
mavenCentral()
...
}
}shared/build.gradle add the dependencydependencies {
implementation "ch.dreipol:dreimultiplatform:<version>"
}/SOME-DIR/dreimultiplatform (outside of your KMM repository)local.properties add:dreimultiplatform.dir=/SOME-DIR/dreimultiplatformsettings.gradle dynamically include the project if the setting existsProperties properties = new Properties()
File localProperties = new File(rootProject.projectDir.absolutePath + '/local.properties')
if (localProperties.exists()) {
properties.load(localProperties.newDataInputStream())
def dreimultiplatformDir = properties.getProperty('dreimultiplatform.dir')
if (dreimultiplatformDir != null) {
include ':dreimultiplatform'
project(':dreimultiplatform').projectDir = new File(dreimultiplatformDir)
}
}build.gradle add repository url for mavenCentral mavenCentral()shared/build.gradle add the dependency if the local property is set otherwise fetch from JitPackdependencies {
Properties properties = new Properties()
File localProperties = new File(rootProject.projectDir.absolutePath + '/local.properties')
String dreimultiplatformDir = null
if (localProperties.exists()) {
properties.load(localProperties.newDataInputStream())
dreimultiplatformDir = properties.getProperty('dreimultiplatform.dir')
}
if (dreimultiplatformDir != null) {
implementation project (":dreimultiplatform")
} else {
// if the dreimultiplatform local directory is not set we will fetch from bintray
implementation "ch.dreipol:dreimultiplatform:<tag or latest commit-short on develop>"
}
}