当前位置:  开发笔记 > 前端 > 正文

是否有任何问题包括一个用clojure编写的jar作为Android应用程序的一部分?

如何解决《是否有任何问题包括一个用clojure编写的jar作为Android应用程序的一部分?》经验,为你挑选了0个好方法。

我正在开发一个标准的Android应用程序(在java中),但是想在clojure中实现一些非UI"业务逻辑".这样做是否有任何缺点,或者我应该注意哪些问题会使这个想法变得糟糕?

我做了一个简单的测试 - 在Android应用程序的一个简单的clojure库中调用函数,这似乎没有任何明显的问题.

我已经看到关于加载clojure.jar的时间问题的评论,但在我的情况下,clojure没有处理UI.

我不清楚是否还有其他内存或性能问题我应该关注.

2017年1月16日更新

尝试使用一些稍微复杂的clojure库时遇到了一些问题,特别是依赖于core.async的库.

使用标准的clojure 1.8作为依赖,我试图:

new ClassDefinedInClojure()

ClassDefinedInClojure是AOT生成的java类,但我得到了:

java.lang.VerifyError: Rejecting class clojure.core.memoize.RetryingDelay because it failed compile-time verification

我认为这是此处确定的同一问题的结果:

http://dev.clojure.org/jira/browse/CLJ-1472

但是,即使在我使用补丁(http://dev.clojure.org/jira/secure/attachment/15351/clj-1472-2.patch)重建clojure 1.8之后问题仍然存在.

我知道clojure的android特定版本https://github.com/clojure-android/clojure,但老实说不清楚这与正常的clojure有何不同以及为什么需要它.我尝试使用它作为标准clojure库的替代品,但有同样的问题.

关于我原来的问题,这很有用 - http://blog.ndk.io/state-of-coa.html

推荐阅读
N个小灰流_701
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有