java - j2objc 是否支持 Guava ?

标签 java objective-c guava

我正在尝试使用 j2objc 来翻译一些 java 代码。当我尝试导入任何类时,我的代码使用了 google Guava 库

import com.google.common.collect.Maps;

我收到一条错误消息,说它无法解决。

The import com.google.common cannot be resolved

是否需要做一些特殊的事情才能在 j2objc 转换器中启用 Guava 支持?

最佳答案

Guava 的翻译目前不是 j2objc 发行版的一部分,尽管有计划包括该库的一个大子集(包括 Maps)。今天项目所做的是下载 Guava 源代码,然后翻译他们想要使用的类。

这种方法的一个问题是确定依赖类的关闭;即,Map 依赖于哪些 Guava 类,以及这些类的依赖项是什么,等等。我们让 javac 确定:

$ javac -d /tmp/guava -sourcepath <guava-source-paths> com.google.common.collect.Maps
$ cd /tmp/guava

$ find com -name '*.class' > /tmp/all-classes.list  # list all classes
$ fgrep -v '$' < /tmp/all-classes.list > /tmp/classes.list # get rid of inner classes
$ sed -s '/class$/java/' < /tmp/classes.list > /tmp/source-files 

确定源文件列表的工具计划用于下一个版本。

关于java - j2objc 是否支持 Guava ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13373725/

相关文章:

Java 将二维数组与数字进行比较时出现异常

iphone - UIDocumentsInteractionController 显示 iBooks 但不打开它

ios - Xcode - 创建了一个 iOS 框架但不能在项目中使用它

java - 过期不可变集合

Java readObject from Inputstream 占用CPU 50%

java - Spring测试时如何在上下文初始化之前初始化测试类?

java - 如何使用 Guavas Splitter 并保留定界符(无正则表达式)?

java - 简洁地将 Optional.absent() 值传递给方法

java - Thread.sleep() 的 Dalvik 操作

objective-c - iOS 的第一语言? Rubymotion 与 C、Objective C 与其他