0

I have a library that works well within my android app (it is not exported as a jar, and instead is including as part of the android project). I am now developing backend, and want to use that particular library for my Java backend.

Both java 1.8. I use gradle in the Android world, as well as in the Java (PC) world.

For android I am using Android studio (latest). For PC I am using IDEA community edition ( 2017 release).

When including the java library into PC gradle project, gradle (ver 3.3) is complaining about Android related stuff ( eg SDK location is not found, set ANDROID_HOME, etc).

I would like to get the gradle on Java backend app (PC version, as I call it) -- to ignore android things completely -- without creating a different copy of the library or another build.gradle for the library...

in other words, the only 2 things that I need from there is

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile 'com.google.code.gson:gson:2.8.0'
}

Is this possible?

Here is build.gradle for the library that I am trying to share across

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath "com.android.tools.build:gradle:2.3.0"
        classpath "me.tatarka:gradle-retrolambda:3.6.0"
    }
}

allprojects {
        repositories {
            jcenter()
        }

        logger.quiet('showing env var in mysharedlib root gradle.')
        buildDir = "${System.getenv('HOME')}/tmp/${rootProject.name}/${project.name}"
}


apply plugin: 'com.android.library'
apply plugin: 'me.tatarka.retrolambda'

android {
    compileSdkVersion 23
    buildToolsVersion "25.0.1"

    defaultConfig {
        minSdkVersion 16
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    androidTestCompile 'junit:junit:4.12'
    compile 'com.google.code.gson:gson:2.8.0'
}
V P
  • 845
  • 10
  • 28
  • Please see https://youtrack.jetbrains.com/issue/IDEA-122904. – CrazyCoder Apr 03 '17 at 08:15
  • @CrazyCoder -- I looked at it. did not help.. I need a way to specify a custom name for settings.gradle. Eg mylibsettings.gradle from there I can specify a custom name for a build.gradle and in there I can specify what I need for non-android build. But I cannot figure out how to do this... – V P Apr 03 '17 at 23:53

0 Answers0