swi prolog 和java_java-如何在Android中使用swi-prolog

我使用swi-prolog开发了一个prolog程序,并使用带有JPL.jar的常规java为其附加了接口,

运行得很好.

现在,我想使用android移动界面而不是java桌面界面执行相同操作.因此,我创建了一个android应用程序,将JPL添加为外部jar,并如前所述调用了prolog文件.代码中没有显示任何错误.

但是,当我将其作为android应用程序运行时,它说找不到jpl.query $1.

这是logcat

08-21 17:36:35.782: D/dalvikvm(659): DexOpt: unable to opt direct call 0x0cd8 at 0x08 in Ljpl/Query;.abort

08-21 17:36:35.812: W/dalvikvm(659): Exception Ljava/lang/UnsatisfiedLinkError; thrown while initializing Ljpl/fli/Prolog;

08-21 17:36:35.812: D/AndroidRuntime(659): Shutting down VM

08-21 17:36:35.822: W/dalvikvm(659): threadid=1: thread exiting with uncaught exception (group=0x40a13300)

08-21 17:36:35.916: E/AndroidRuntime(659): FATAL EXCEPTION: main

08-21 17:36:35.916: E/AndroidRuntime(659): java.lang.ExceptionInInitializerError

08-21 17:36:35.916: E/AndroidRuntime(659): at jpl.Query.open(Query.java:286)

08-21 17:36:35.916: E/AndroidRuntime(659): at jpl.Util.textToTerm(Util.java:162)

08-21 17:36:35.916: E/AndroidRuntime(659): at jpl.Query.(Query.java:198)

08-21 17:36:35.916: E/AndroidRuntime(659): at com.example.trtest.swi.main(swi.java:21)

08-21 17:36:35.916: E/AndroidRuntime(659): at com.example.trtest.MainActivity$1.onClick(MainActivity.java:70)

------

----

08-21 17:36:35.916: E/AndroidRuntime(659): Caused by: java.lang.UnsatisfiedLinkError: Couldn't load jpl: findLibrary returned null

08-21 17:36:35.916: E/AndroidRuntime(659): at java.lang.Runtime.loadLibrary(Runtime.java:365)

08-21 17:36:35.916: E/AndroidRuntime(659): at java.lang.System.loadLibrary(System.java:535)

08-21 17:36:35.916: E/AndroidRuntime(659): at jpl.JPL.loadNativeLibrary(JPL.java:100)

08-21 17:36:35.916: E/AndroidRuntime(659): at jpl.fli.Prolog.(Prolog.java:85)

...

那么错误可能是什么.

我发现有人说JPL(swi prolog)不能在android中使用,是真的.

我该怎么办才能在Android上运行我的Prolog应用

谢谢

马西

解决方法:

SWI-Prolog开发人员Jan Wielemaker最近在邮件列表中发布了在Android设备上使用SWI-Prolog的一些进展.查看[SWIPL] Holiday present: SWI-Prolog on Android

标签:prolog,jvm,jpl,java,android

来源: https://codeday.me/bug/20191030/1968459.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值