Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
463 views
in Technique[技术] by (71.8m points)

gluon - javafxports 'android' gradle task requires "Android Support Library" which is retired from Android SDK Manager...what now?

The official Gluon docs say in the prerequisites for an Android build:

From the Android SDK Manager, install...from Extras the Android Support Library

However, it seems that this is retired from the sdk manager in lieu of the "Android Support Repository", a gradle repository. The javafxports plugin is apparently still looking for the old support library folder in the android SDK, as indicated by the error:

Cannot expand ZIP '<my AppData path>LocalAndroidsdkextrasandroidsupportmultidexlibrarylibsandroid-support-multidex.jar' as it does not exist

which has this stackoverflow answer, indicating the sdk doesn't install it there anymore, even with "Obsolete" checked in the sdk manager. How can we get the javafxports gradle plugin to find the support library while it runs the 'android' build task? Sure we could manually move it there, but that'd be a really ugly process for using with a build server or dev team...

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

So far (current release version 1.2.0), the jfxmobile plugin has been working with the obsolete Android Support Library.

As now it is not only obsolete but not available any more for download, as Joeri Sykora commented, there is a snapshot available with a fix to use the new Support Repository.

Until release version 1.3.0 is out, you can use it providing you refer the repository to download this snapshot, so there is no need to download, build or install manually the plugin:

buildscript {
    repositories {
        maven {
            url 'https://oss.sonatype.org/content/repositories/snapshots'
        }
        jcenter()
    }
    dependencies {
        classpath 'org.javafxports:jfxmobile-plugin:1.3.0-SNAPSHOT'
    }
}

This will work if you have installed with the Android SDK Manager Extras/Google Repository: check your Android sdk path for this folder: ANDROID_HOME/extras/google/m2repository, and the Extras/Android Support Repository: check for ANDROID_HOME/extras/android/m2repository/com/android/support/multidex/1.0.1/multidex-1.0.1.aar

And don't forget to apply the changes in the build script to your gradle project (Sync button on top-left of Gradle window in IntelliJ).


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...