[ https://issues.apache.org/jira/browse/CB-13289?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16234419#comment-16234419 ]
ASF GitHub Bot commented on CB-13289: ------------------------------------- infil00p closed pull request #413: CB-13289: This fixes the Cordova-Android build on cordova-android 6.x URL: https://github.com/apache/cordova-android/pull/413 This is a PR merged from a forked repository. As GitHub hides the original diff on merge, it is displayed below for the sake of provenance: As this is a foreign pull request (from a fork), the diff is supplied below (as it won't show otherwise due to GitHub magic): diff --git a/.travis.yml b/.travis.yml index 94be64239..e0b89287f 100644 --- a/.travis.yml +++ b/.travis.yml @@ -14,7 +14,7 @@ before_install: - export PATH=${GRADLE_HOME}/bin:${ANDROID_HOME}:${ANDROID_HOME}/emulator:${ANDROID_TOOLS}:${ANDROID_TOOLS}/bin:${ANDROID_HOME}/platform-tools:$PATH - node --version - gradle --version - - echo y | android --silent update sdk --no-ui --all --filter platform-tools,tools,build-tools-26.0.0,android-26,android-25,extra-google-m2repository,extra-android-m2repository + - echo y | android --silent update sdk --no-ui --all --filter platform-tools,tools,build-tools-26.0.2,android-26,android-25,extra-google-m2repository,extra-android-m2repository android: components: - tools diff --git a/appveyor.yml b/appveyor.yml index 907d0c434..b73aa21c8 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -17,7 +17,7 @@ init: install: - choco install gradle -version 3.4.1 - gradle -version - - echo y | "%ANDROID_HOME%\tools\android.bat" --silent update sdk --no-ui --all --filter platform-tools,tools,build-tools-26.0.0,android-26,android-25,extra-google-m2repository,extra-android-m2repository + - echo y | "%ANDROID_HOME%\tools\android.bat" --silent update sdk --no-ui --all --filter platform-tools,tools,build-tools-26.0.2,android-26,android-25,extra-google-m2repository,extra-android-m2repository # on windows we need to accept sublicenses for the new tooling, wee. 30 is an arbitrary number, # but should be the maximum number of licenses we explicitly need to type "Y ENTER" for. # also, the sdkmanager in all its glory leaks a bit of output to stderr, and powershell diff --git a/bin/templates/cordova/lib/builders/GradleBuilder.js b/bin/templates/cordova/lib/builders/GradleBuilder.js index 256df80e9..53b4e3379 100644 --- a/bin/templates/cordova/lib/builders/GradleBuilder.js +++ b/bin/templates/cordova/lib/builders/GradleBuilder.js @@ -133,9 +133,7 @@ GradleBuilder.prototype.prepBuildFiles = function () { subProjects.forEach(function (p) { console.log('Subproject Path: ' + p); var libName = p.replace(/[/\\]/g, ':').replace(name + '-', ''); - depsList += ' debugCompile(project(path: "' + libName + '", configuration: "debug"))'; - insertExclude(p); - depsList += ' releaseCompile(project(path: "' + libName + '", configuration: "release"))'; + depsList += ' implementation(project(path: "' + libName + '"))'; insertExclude(p); }); // For why we do this mapping: https://issues.apache.org/jira/browse/CB-8390 @@ -198,7 +196,7 @@ GradleBuilder.prototype.prepEnv = function (opts) { // For some reason, using ^ and $ don't work. This does the job, though. var distributionUrlRegex = /distributionUrl.*zip/; /* jshint -W069 */ - var distributionUrl = process.env['CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL'] || 'https\\://services.gradle.org/distributions/gradle-3.3-all.zip'; + var distributionUrl = process.env['CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL'] || 'https\\://services.gradle.org/distributions/gradle-4.1-all.zip'; /* jshint +W069 */ var gradleWrapperPropertiesPath = path.join(self.root, 'gradle', 'wrapper', 'gradle-wrapper.properties'); shell.chmod('u+w', gradleWrapperPropertiesPath); diff --git a/bin/templates/cordova/lib/check_reqs.js b/bin/templates/cordova/lib/check_reqs.js index 2c3f291d8..03bfe9127 100644 --- a/bin/templates/cordova/lib/check_reqs.js +++ b/bin/templates/cordova/lib/check_reqs.js @@ -99,16 +99,8 @@ module.exports.get_gradle_wrapper = function () { var i = 0; var foundStudio = false; var program_dir; - if (module.exports.isDarwin()) { - program_dir = fs.readdirSync('/Applications'); - while (i < program_dir.length && !foundStudio) { - if (program_dir[i].startsWith('Android Studio')) { - // TODO: Check for a specific Android Studio version, make sure it's not Canary - androidStudioPath = path.join('/Applications', program_dir[i], 'Contents', 'gradle'); - foundStudio = true; - } else { ++i; } - } - } else if (module.exports.isWindows()) { + // OK, This hack only works on Windows, not on Mac OS or Linux. We will be deleting this eventually! + if (module.exports.isWindows()) { var result = child_process.spawnSync(path.join(__dirname, 'getASPath.bat')); // console.log('result.stdout =' + result.stdout.toString()); diff --git a/bin/templates/project/build.gradle b/bin/templates/project/build.gradle index 6ce8695b9..76496b7f5 100644 --- a/bin/templates/project/build.gradle +++ b/bin/templates/project/build.gradle @@ -32,7 +32,7 @@ buildscript { // http://tools.android.com/tech-docs/new-build-system/version-compatibility // and https://issues.apache.org/jira/browse/CB-8143 dependencies { - classpath 'com.android.tools.build:gradle:2.2.3' + classpath 'com.android.tools.build:gradle:3.0.0' } } @@ -47,7 +47,7 @@ allprojects { } task wrapper(type: Wrapper) { - gradleVersion = '2.14.1' + gradleVersion = '4.1.0' } // Configuration properties. Set these via environment variables, build-extras.gradle, or gradle.properties. @@ -249,7 +249,7 @@ android { } dependencies { - compile fileTree(dir: 'libs', include: '*.jar') + implementation fileTree(dir: 'libs', include: '*.jar') // SUB-PROJECT DEPENDENCIES START // SUB-PROJECT DEPENDENCIES END } diff --git a/test/app/build.gradle b/test/app/build.gradle index 7f587ac80..a5310b241 100644 --- a/test/app/build.gradle +++ b/test/app/build.gradle @@ -19,12 +19,12 @@ apply plugin: 'com.android.application' android { - compileSdkVersion 25 - buildToolsVersion "25.0.2" + compileSdkVersion 26 + buildToolsVersion "26.0.2" defaultConfig { applicationId "org.apache.cordova.unittests" minSdkVersion 16 - targetSdkVersion 25 + targetSdkVersion 26 versionCode 1 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" @@ -38,16 +38,15 @@ android { } dependencies { - compile fileTree(dir: 'libs', include: ['*.jar']) - debugCompile project(path: ":CordovaLib", configuration: "debug") - releaseCompile project(path: ":CordovaLib", configuration: "release") - androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { + implementation fileTree(dir: 'libs', include: ['*.jar']) + implementation project(path: ":CordovaLib") + androidTestImplementation('com.android.support.test.espresso:espresso-core:2.2.2', { exclude group: 'com.android.support', module: 'support-annotations' }) - androidTestCompile ('com.android.support.test.espresso:espresso-web:2.2.2', { + androidTestImplementation ('com.android.support.test.espresso:espresso-web:2.2.2', { exclude group: 'com.android.support', module: 'support-annotations' }) - compile 'com.android.support:appcompat-v7:25.1.1' - testCompile 'junit:junit:4.12' - testCompile 'org.json:json:20140107' + implementation 'com.android.support:appcompat-v7:26.1.0' + testImplementation 'junit:junit:4.12' + testImplementation 'org.json:json:20140107' } diff --git a/test/build.gradle b/test/build.gradle index b5decb145..319ac2f30 100644 --- a/test/build.gradle +++ b/test/build.gradle @@ -21,9 +21,10 @@ buildscript { repositories { jcenter() + google() } dependencies { - classpath 'com.android.tools.build:gradle:2.3.0' + classpath 'com.android.tools.build:gradle:3.0.0' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files @@ -33,6 +34,7 @@ buildscript { allprojects { repositories { jcenter() + google() } } diff --git a/test/gradle/wrapper/gradle-wrapper.properties b/test/gradle/wrapper/gradle-wrapper.properties index 14ab6f937..c83ef6eaa 100644 --- a/test/gradle/wrapper/gradle-wrapper.properties +++ b/test/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Wed Mar 22 10:51:47 PDT 2017 +#Wed Oct 25 11:17:25 PDT 2017 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > Gradle/Android Plugin DSL change breaks including CordovaLib > ------------------------------------------------------------ > > Key: CB-13289 > URL: https://issues.apache.org/jira/browse/CB-13289 > Project: Apache Cordova > Issue Type: Bug > Components: cordova-android > Affects Versions: 6.2.1 > Reporter: Joe Bowser > Assignee: Joe Bowser > Priority: Blocker > Labels: android-next > Fix For: 7.0.0 > > > Android Studio 3.0.0 uses a new DSL, and this breaks the dependency list. > This directly affects Cordova plugins that work as a Library Module, as well > as adding and removing the Android platform. Basically, once Android Studio > 3.0 updates, Cordova projects will not work properly with the new version of > Android Studio once they're updated. > This depends on CB-11244 -- This message was sent by Atlassian JIRA (v6.4.14#64029) --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@cordova.apache.org For additional commands, e-mail: issues-h...@cordova.apache.org