首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何编译SNA (Scala Native Access)

如何编译SNA (Scala Native Access)
EN

Stack Overflow用户
提问于 2013-12-04 15:37:37
回答 1查看 602关注 0票数 1

我是Scala和Java世界的新手,所以请原谅我这个简单的问题。

在我的项目中,我想使用本机库,它是硬件设备的接口。我正在尝试编译SNA (Scala Native Access),但我不能这样做。

我将SNA源代码下载到文件夹sna,将JNA jars下载到文件夹jna下一张cd到D:\sna\src\com\sun\jna\java,并尝试使用以下命令进行编译:

Structure.java -cp d:\JNA\jna-4.0.0.jar javac

它给了我以下错误:

代码语言:javascript
复制
Structure.java:1050: error: cannot find symbol
            if (m.getSize() < requiredSize) {
                 ^
  symbol:   method getSize()
  location: variable m of type Memory
Structure.java:1287: error: cannot find symbol
                StructField sf = ((Union)ref).biggestField;
                                             ^
  symbol:   variable biggestField
  location: class Union
Note: Structure.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
2 errors

SNA是否得到了作者的支持?它是否与JNA (4.0.0)的实际版本兼容?

我在64位的Windows7上尝试了这个步骤。

EN

回答 1

Stack Overflow用户

发布于 2013-12-30 04:19:18

据我所知,只有JNA中的结构与Scala类不兼容。因此,如果不想修补JNA,可以用Java重写Scala类,并将Java类(扩展结构)实例传递给本机函数。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20369660

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档