【发布时间】:2016-05-22 09:18:04
【问题描述】:
我有一个 JavafX 项目,我想只为 Ipad 导出它。我发现 Gluon 框架可以为我做到这一点。不幸的是,我使用的 JavaFX 项目使用的是 Ant,而不是 Gluon 文档中显示的 Gradle。
有什么办法可以将 Gluon 依赖项放在 Ant 任务中并生成 IOS 输出可执行文件? 如果没有,是否可以将此项目转换为 Gradle 项目。
请注意我使用的是 Ubuntu Linux。我不知道创建 Ipad 可执行文件需要什么。由于我之前没有处理过Mac系统,因此我对此的理解可能是错误的。
这是 ant 的 build.xml:
<?xml version="1.0" encoding="ASCII"?>
<anttasks:AntTask xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:anttasks="http://org.eclipse.fx.ide.jdt/1.0" buildDirectory="${project}/build" cssToBin="true">
<deploy packagingFormat="exe">
<application name="Test" mainclass="application.Main" version="1.0"/>
<info title="Frontend" vendor="NAME"/>
</deploy>
<signjar/>
</anttasks:AntTask>
这就是我在整个项目中的全部内容,其他只是我自己创建的 Java 文件。你能帮忙的话,我会很高兴。谢谢你。
更新
根据收到的答复,我创建了一个 Gradle 项目并将文件移到那里。之后,我从 here 添加了 Gluon 库,但我不断收到此错误:
Error:(14, 0) Build script error, unsupported Gradle DSL method found: 'androidRuntime()'!
Possible causes could be:
- you are using Gradle version where the method is absent (<a href="open_gradle_settings">Fix Gradle settings</a>)
- you didn't apply Gradle plugin which provides the method (<a href="apply_gradle_plugin">Apply Gradle plugin</a>)
- or there is a mistake in a build script (<a href="goto_source">Goto source</a>)
Update-2
所以,我最后做的是为 Intellij Idea 安装 Gluon 插件,然后创建一个 Gluon 项目。正如网页上所建议的,我添加了 ANDROID_HOME 参数和目录指向 android-sdk for Linux。不过,当我调用运行程序时,我不断收到错误消息:
Error:Android Source Generator: [GluonBasicProject] Android SDK is not specified
我的 gradle.properties 看起来像这样:
gradlePropertiesProp=gradlePropertiesValue
systemProjectProp=shouldBeOverWrittenBySystemProp
envProjectProp=shouldBeOverWrittenByEnvProp
systemProp.system=systemValue
ANDROID_HOME=/home/akshay/Downloads/android-sdk-linux
请注意,在创建这个项目时,我选择了默认的 gradle-wrapper,并且在我的系统上发现了 4 个 gradle 发行版,因此我更新了所有四个中的 ANDROId_HOME 值。
build.gradle:
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'org.javafxports:jfxmobile-plugin:1.0.0-b10'
}
}
apply plugin: 'org.javafxports.jfxmobile'
repositories {
jcenter()
}
mainClassName = 'com.gluonapplication.GluonApplication'
jfxmobile {
android {
manifest = 'src/android/AndroidManifest.xml'
}
ios {
infoPList = file('src/ios/Default-Info.plist')
}
}
【问题讨论】:
-
您在 Mac 上运行吗?您将需要它来创建 iPad 应用程序...
-
@JoséPereda:我没有 MAC,但我会创建一个 Mac OS 的 VM,并在其中做一些事情。那你能告诉我如何在 Mac 上处理这个问题吗?
-
据我所知,这行不通。无论如何,我会回答你的问题
-
@JoséPereda : 我的同事有一台 Mac,如果有需要我们会找一个 Mac 系统。如果您有时间,请告诉我如何进行。谢谢。
标签: java gradle javafx ant gluon