簡體   English   中英

使用Gluon將JavaFx編譯為android時出錯

[英]Error when compiling JavaFx to android using Gluon

我有一個Javafx應用程序,我正在嘗試使用適用於netbeans的gluon插件移植到android。 我目前收到此錯誤:

FAILURE: Build failed with an exception.
  • 出了什么問題:任務':createMainDexList'的執行失敗。

    com.android.dx.cf.iface.ParseException的“主”線程中的異常:com.android.dx.cf的com.android.dx.cf.cst.ConstantPoolParser.determineOffsets(ConstantPoolParser.java:226)不支持InvokeDynamic com.android.dx.cf.cst.ConstantPoolParser.parseIfNecessary(ConstantPoolParser.java:124)上的.cst.ConstantPoolParser.parse(ConstantPoolParser.java:132)在com.android.dx.cf.cst.ConstantPoolParser.getPool(Constant com.android.dx.cf.direct.DirectClassFile.parse0(DirectClassFile.java:491)處的com.android.dx.cf.direct.DirectClassFile.parse(DirectClassFile.java:406)處的.java:115)。 com.android.dx.cf.direct.DirectClassFile.getAttributes(DirectClassFile.java:311)上com.android.multidex.MainDexListBuilder.hasRuntimeVisibleAnnotation(android.dx.cf.direct.DirectClassFile.parseToEndIfNecessary(DirectClassFile.java:397) com.android.multidex.MainDexListBuilder.keepAnnotated(MainDexListBuilder.java:167)處的com.android.multidex.MainDexListBuilder.MainDexListBuilder.java:191) 在com.android.multidex.MainDexListBuilder.main(MainDexListBuilder.java:91)處的xListBuilder.java:121)在com.android.multidex.ClassReferenceListBuilder.main(ClassReferenceListBuilder.java:58)處...同時准備偏移量為00000047的cst 000e ...同時解析de / jensd / fx / glyphs / control / skin / GlyphCheckBoxSkin.class

  • 嘗試:使用--stacktrace選項運行以獲取堆棧跟蹤。 使用--debug選項運行,以獲取更多日志輸出。

建立失敗

我正在運行jdk 8(64位),這是我的build.gradle文件:

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

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

mainClassName = 'com.mypackage.MyMainClass'
ext.CHARM_DOWN_VERSION = "1.0.0"

dependencies {
compile 'com.gluonhq:charm:3.0.0'

compile 'com.jfoenix:jfoenix:1.6.0'
compile 'de.jensd:fontawesomefx-emojione:2.2.7-2'
compile 'de.jensd:fontawesomefx-fontawesome:4.7.0-5'
compile 'de.jensd:fontawesomefx-icons525:3.0.0-4'
compile 'de.jensd:fontawesomefx-materialdesignfont:1.7.22-4'
compile 'de.jensd:fontawesomefx-materialicons:2.2.0-5'
compile 'de.jensd:fontawesomefx-octicons:4.3.0-5'
compile 'de.jensd:fontawesomefx-weathericons:2.0.10-5'
compile 'de.jensd:fontawesomefx-controls:8.15'
compile 'org.controlsfx:controlsfx:8.40.11'

compile 'org.xerial:sqlite-jdbc:3.8.6'

compile group: 'org.json', name: 'json', version: '20090211'

runtime files('lang')


androidRuntime 'com.gluonhq:charm-android:3.0.0'
iosRuntime 'com.gluonhq:charm-ios:3.0.0'
desktopRuntime 'com.gluonhq:charm-desktop:3.0.0'

compile "com.gluonhq:charm-down-common:$CHARM_DOWN_VERSION"
desktopRuntime "com.gluonhq:charm-down-desktop:$CHARM_DOWN_VERSION"
androidRuntime "com.gluonhq:charm-down-android:$CHARM_DOWN_VERSION"
iosRuntime "com.gluonhq:charm-down-ios:$CHARM_DOWN_VERSION"
}

jfxmobile {
android {
    manifest = 'src/android/AndroidManifest.xml'
    androidSdk='C:\\AndroidSDK'
}
ios {
    infoPList = file('src/ios/Default-Info.plist')
    forceLinkClasses = [
            'com.gluonhq.**.*',
            'io.datafx.**.*',
            'javax.annotations.**.*',
            'javax.inject.**.*',
            'javax.json.**.*',
            'org.glassfish.json.**.*'
    ]
}
}

請幫忙!

我有64位的jdk8運行,而不是32位。

我從改變了膠子的類路徑

classpath 'org.javafxports:jfxmobile-plugin:1.0.9'

到類路徑'org.javafxports:jfxmobile-plugin:1.3.3'

而且我能夠構建apk。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM