用于桌面和移动的Java单一代码库

时间:2016-08-12 09:13:08

标签: java desktop-application mobile-application offline-mode eclipse-scout

是否有一种或几种基于java的技术可以帮助我编写一次应用程序代码库(包括Logic-Views-Controllers),然后编译并运行它 所有平台,包括主桌面和移动操作系统以及 在浏览器中。它必须工作并保存在离线模式下,以便它可以在连接到互联网后立即与远程服务器同步。对我来说,似乎必须有一种方法,如果我使用某种html / css / js技术来处理我对这种应用程序的看法,因为我不需要花哨的操作系统相关的视图技术,以及java for Logic和控制器。到目前为止,我发现Oracle ADF Mobile似乎是商业化,eclipse RAP,eclipse侦察......但我也寻找覆盖桌面的东西。另外,如果我只能在Web浏览器中运行应用程序,以防它在离线模式下运行并保存,那对我来说就足够了。

3 个答案:

答案 0 :(得分:3)

您可以使用Eclipse Scout进行以下设置/限制:

  • 自2016年6月起,Scout仅支持Web UI(直到2015年Scout也支持Swing / SWT,但现在已经不复存在了)
  • 您需要在本地Tomcat中运行Scout前端模型部件 或类似的
  • 您需要添加用于连接Scout前端的同步代码 带有Scout后端的模型(一旦客户端安装上线就会同步数据)

与Java结合使用移动解决方案很可能会让您处于混乱状态,尤其是使用discontinuation of RoboVM

提示:Scout团队已经开始研究Scout UI的JS离线功能。然而,这种努力距离生产质量还有很多个月(许多部件/概念仍然缺失,并非所有部件都是开源,没有文档等)。

补充:你会对Eclipse RAP有同样的限制(需要一个前端服务器,只需要基于网络,提示:样式说唱应用程序很难)。

答案 1 :(得分:2)

寻找银弹......要注意"不关心某事" (操作系统)会让你非常关心一个框架,它可以完成"脏工作"。

抛开意见,在2016年,您将通过JavaScript更快地实现目标,它已成为所有地方唯一支持的事物。
如果你对JS很好,并且使用异构/不太成熟的工具生活在最前沿,那可能是一件好事(见NPM gate)。

浏览器(applet)中的Java由于dying soon而为well documented security issues。有人可能会说它已经死了很长时间了。

如果您确实只想用Java编写代码,GWT仍然存在。它将您的Java代码编译成高效的JavaScript 然而,自从谷歌通过将项目赠送给指导委员会来减少其参与后,发展速度已大幅放缓,我甚至不确定他们是否与JDK 8保持同步。 谷歌仍然在像收件箱这样的项目中使用GWT,因为它值得。

答案 2 :(得分:1)

我会选择GWT。

谷歌也将此用于收件箱webapp和收件箱安卓应用等项目。使用GWT可以共享两个应用程序之间的大量代码。

也可以编译为Windows桌面应用程序。