JavaFXPorts和robovm-cocoatouch导入

时间:2015-04-10 16:26:56

标签: ios gradle robovm javafxports

我正在尝试使用JavaFXPortsRoboVM-cocoatouch,但我无法使用RoboVM中的本地内容,例如UIButton

我的build.gradle文件中有以下依赖项:

    classpath 'org.javafxports:jfxmobile-plugin:1.0.0-b5'
    classpath 'org.robovm:robovm-cocoatouch:1.0.0'

我尝试导入org.robovm.apple.uikit.*,但eclipse无法找到包裹。

我必须做些什么才能使用JavaFXPorts和RoboVM的原生内容?

1 个答案:

答案 0 :(得分:1)

答案简短:

您需要创建一个文件夹src/ios/java,您的iOS特定源文件应该位于该文件夹中。此文件夹中的源文件自动设置了正确的类路径,因此您可以在那里使用RoboVM类。

答案很长:

除了默认的主要源集之外,jfxmobile插件还为插件支持的每个平台添加了一个源集:android,ios和desktop。每个源集都有一个src/PLATFORM/javasrc/PLATFORM/resources目录,其中分别包含平台特定的源文件和资源文件。

平台无关代码必须写在文件夹src/main/java内,而平台特定代码必须写在匹配的平台源文件夹中。例如,在您的情况下,iOS代码应放在src/ios/java文件夹中。

该插件还确保为每个源集正确配置依赖项。此外,当您例如生成IPA时,它将仅包含来自main和ios源集的类文件。

有关jfxmobile项目结构的更多信息,请查看此网页上的“结构”部分:http://javafxports.org/page/Setting_up

您可以在java插件文档中阅读有关gradle源集的更多信息:http://gradle.org/docs/current/userguide/java_plugin.html