正在搜索现有的 Frege java 本机绑定,例如 java.nio.file.Path
Searching for existing Frege java native bindings such as java.nio.file.Path
我正在尝试将一个简单的 java 项目移植到弗雷格进行练习。我花了一些时间寻找 java.nio.file.Path
的绑定,等等。我找到 https://github.com/Frege/frege/blob/master/frege/java/IO.fr, which is close, but no nio
there. Next I thought I would just do it by hand or try https://github.com/Frege/frege-native-gen.
好的,我的问题是"what is the recommended way to do java bindings"?这个问题不仅限于java.nio.*
。更具体地说,如果我找不到我想要的绑定,我应该
- 为他们寻找一些标准项目,如果我找不到他们,我自己贡献?
- 使用生成工具创建我自己的?
- 做这里没有提到的其他事情吗?
这要视情况而定。例如,通常情况下您可以使用 2 或 3 个本机定义来启动您的项目。
OTOH,非常欢迎贡献一个带有 Java SDK 绑定的新模块。但请注意,这并不总是微不足道的,因为原生生成工具通常会创建需要仔细检查和手动改进的代码。
规则是 Java SDK 应该支持开箱即用(它还没有像您发现的那样)。对于其他图书馆,可能有值得寻找的现有项目。
我正在尝试将一个简单的 java 项目移植到弗雷格进行练习。我花了一些时间寻找 java.nio.file.Path
的绑定,等等。我找到 https://github.com/Frege/frege/blob/master/frege/java/IO.fr, which is close, but no nio
there. Next I thought I would just do it by hand or try https://github.com/Frege/frege-native-gen.
好的,我的问题是"what is the recommended way to do java bindings"?这个问题不仅限于java.nio.*
。更具体地说,如果我找不到我想要的绑定,我应该
- 为他们寻找一些标准项目,如果我找不到他们,我自己贡献?
- 使用生成工具创建我自己的?
- 做这里没有提到的其他事情吗?
这要视情况而定。例如,通常情况下您可以使用 2 或 3 个本机定义来启动您的项目。
OTOH,非常欢迎贡献一个带有 Java SDK 绑定的新模块。但请注意,这并不总是微不足道的,因为原生生成工具通常会创建需要仔细检查和手动改进的代码。
规则是 Java SDK 应该支持开箱即用(它还没有像您发现的那样)。对于其他图书馆,可能有值得寻找的现有项目。