Can't build a gluon project for mobile using g

2019-01-20 10:33发布

问题:

I followed the instructions on http://docs.gluonhq.com/charm/4.0.1/#_getting_started. I'm using eclipse 4.5.2 and JDK 1.8.0_102. I also downloaded Android Studio with the 24/25 API level SDK from https://developer.android.com/studio/index.html#Other. Here is what I did:

  1. downloaded gradle 3.1 and set up the environment variables so gradle -v returns the correct information.
  2. installed the eclipse gluon plugin version 2.4.0 from http://download.gluonhq.com/tools/eclipse/release
  3. installed Buildship 1.0.21 from Buildship - http://download.eclipse.org/buildship/updates/e45/releases/1.0
  4. created the gluon project as shown in the tutorial and checked platforms: android, iOS and desktop. Project was created successfully.
  5. opened the Show View menu

    and selected Gradle Tasks

  6. the gradle task view looks different from the tutorial:

    I selected the GluonTest/application/run task and it runs on desktop well. But I can't find the androidInstall and launchIOSDevice tasks as you can see in the picture.

Here is my gradle.build file:

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'org.javafxports:jfxmobile-plugin:1.1.1'
    }
}

apply plugin: 'org.javafxports.jfxmobile'

repositories {
    jcenter()
    maven {
        url 'http://nexus.gluonhq.com/nexus/content/repositories/releases'
    }
}

mainClassName = 'gluon.main.GluonApplication'

dependencies {
    compile 'com.gluonhq:charm:4.0.1'
}

jfxmobile {
    downConfig {
        version = '3.0.0'
        plugins 'display', 'lifecycle', 'statusbar', 'storage'
    }
    android {
        manifest = 'src/android/AndroidManifest.xml'
        androidSdk = 'C:/Users/Mark/AppData/Local/Android/sdk'
    }
    ios {
        infoPList = file('src/ios/Default-Info.plist')
        forceLinkClasses = [
                'com.gluonhq.**.*',
                'javax.annotations.**.*',
                'javax.inject.**.*',
                'javax.json.**.*',
                'org.glassfish.json.**.*'
        ]
    }
}

The only thing I changed there was to add the line androidSdk = 'C:/Users/Mark/AppData/Local/Android/sdk'.

I understand I can't build the iOS project yet but I should be able to build for android. How do I do that?

回答1:

After updating Eclipse Mars I can reproduce your issue, and the solution to get all the tasks back is easy:

Based on this thread, it seems there are public and private tasks.

So only the public tasks (those added to any kind of group) are visible by default:

Click on the down arrow icon on the right of the Tasks View:

Select Show All Tasks:

And you will have a new group: other, with the missing tasks like android, launchIOSDevice: