问题标签 [jamvm]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
classpath - 如何构建 GNU Classpath 和 JamVM
我正在尝试构建 GNU Classpath 0.98 和 JamVM 1.5.2。
按照 JamVM 自述文件,我做了“配置”;制作; 在 jamVM 上进行安装,它工作正常。
然后我将 jamvm 和 Sun javac 添加到路径中。
然后使用 GNU Classpath 我这样做了:
我收到了这个错误:
javac 失败(请参阅 config.log)
在 上config.log
,我看到 javac 找不到 VMStackWalker(它是 jamvm 特定的)我将 jamvm 类添加到 CLASSPATH 中,然后出现此错误:
Java VM jamvm 失败(请参阅 config.log)
在 上config.log
,我看到 jamvm 找不到java.lang.Class
。
怎么了?!
java - 如何强制 Java/awt 使用特定的工具包(qt)?
我正在开发一个只有 qt 的嵌入式 Linux 设备。出于某种原因,Java 决定使用 gnu.java.awt.peer.gtk.GtkToolkit。如何强制它使用 gnu.java.awt.peer.qt.QtToolkit 代替(或更改默认行为)?
qt - jamvm1.5+classpath-0.96+qt4.3 QPixmap:在GUI线程之外使用pixmaps是不安全的
我是 Qt 的新手,我不知道如何处理它。
c - C/Posix 问题
我已经在 JamVM 上工作了两周,这是一个小而强大的 Java 虚拟机。
现在我试图弄清楚内存是如何实现的,但我遇到了两个 C 愚蠢的问题:
char *mem = (char*)mmap(0, args->max_heap, PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON, -1, 0);
--> -1 参数代表文件描述符,这是什么意思?(我已经阅读了 mmap man,但还没有找到它,也许我误解了......)。
heapbase = (char*)(((uintptr_t)mem+HEADER_SIZE+OBJECT_GRAIN-1&)~(OBJECT_GRAIN-1)) HEADER_SIZE;
--> 什么是 1& ?我在 C 规范中找不到它...
谢谢,
扬
c - 暂停 JamVM 并重新启动它?
我正在研究 JamVM,一个流行的小型 Java VM,我想停止它(暂停所有线程),在 VM 中执行一个函数(一个 C 函数),然后重新启动所有线程。
我试图处理一个信号(Ctrl-C),执行我的函数,但这不起作用,因为VM接收到的每个信号,它都会将它传输到正在运行的java程序......
那么你有办法停止VM,然后重新启动它吗?(有无信号都无所谓)
zlib - Buildroot - 构建 jamvm 1.5.1 时出错
在尝试构建我的 Buildroot 环境时,我遇到了(另一个)构建错误。请注意,这个问题与(但不依赖于)我以前(已解决)的问题here和here有关。
我正在尝试在内核和 JamVM 中包含蓝牙支持,但我已经成功构建了一个包含 Jamvm 的 Buildroot 环境,但现在由于某种原因构建失败了。
当构建过程到达:
jamvm 1.5.1 配置
它最终因错误而失败:
检查 ecj... (缓存) javac -Xlint:unchecked,cast,divzero,empty,finally,overrides
检查 -lpthread 中的 pthread_self ... 是
检查 -lm 中的 fmod... 是
检查 -ldl 中的 dlopen...(缓存)是
检查-lz中的膨胀...是的
检查 ANSI C 头文件...(缓存)是
检查 sys/time.h...(缓存)是
检查 unistd.h...(缓存)是
检查 endian.h 可用性...是的
检查 endian.h 存在...是的
检查endian.h ...是的
检查 sys/param.h...(缓存)是
检查 locale.h...(缓存)是
检查 zlib.h...(缓存)否
配置:错误:zlib.h 丢失
我检查了输出位置 /output/build/zlib-1.2.3 并且我可以看到文件 zlib.h 所以我很困惑为什么声称无法找到它。此外,我将 jamvm.mk 更改为依赖 zlib 并再次尝试 make(注意我没有执行“make clean”)
有人有想法么?我不明白为什么 jamvm 现在不会构建,除了它必须是构建过程中的某些东西。
drools - Drools:在 JamVM 中编译规则(或加载编译规则)失败并出现模糊异常
我正在开发一个框架,作为其功能之一,它使机器人能够使用基于规则的系统。我们从 Jess 作为 RBS 开始,现在想要实现 drools(使用 Drools 5.2.0 final),它适用于我们在 OpenJDK 6 上运行的开发机器。
我们的机器人控制器运行 ARM Linux 和 JamVM,之前是 1.4.3,但我最近编译了 1.5.4,因为它缺少 drools 所需的类。失败后,我将 JamVM 安装在虚拟机中,使用与为控制器编译时相同的配置,但在那里失败并出现相同的异常。
一项小研究表明 Drools + JamVM 有错误报告,但这也意味着它通常确实有效。
当使用以下代码运行具有预编译规则的框架时...
...我得到了这个例外:
...在 OpenJDK 中有效。奇怪的是,事实证明,有问题的列表JavaDialectRuntimeData
是通过获得的,Collections.emptyList()
并且永远不会再次更改(或者 eclipse 建议......)。
.drl
使用此代码运行裸文件时:
...我从规则编译器中得到这些(意外)异常:
再次,编译规则在 OpenJDK 中工作得很好。我们正在使用 Janino,它在类路径中被正确引用(运行时使用的类路径是由 Maven 构建创建的,因此包含由 drools/janino/ 其他任何东西引用的所有 jars)
有谁知道这里发生了什么和/或如何让 Drools 与 JamVM 一起工作?
java - java.io.IOException:权限被 LAN 唤醒拒绝
我编写了这段代码来实现网络唤醒:
但我明白了:
问题似乎是广播地址,因为如果我更改为任何其他地址,它不会给出此错误。我怎样才能避免呢?我正在使用带有 JamVM 和 GNU Classpath 的 linux busybox。
java - 当 main 在包内时 JamVM NoClassDefFoundError
当我尝试将 HelloWorld 放入包中时,我收到 NoClassDefFoundError,类文件的名称错误!我正在使用 Jamvm v1.5.2。我假设我的类路径设置正确,因为当 HelloWorld 不在包中时我能够运行...如何让 main 在带有 jamvm 的包内运行?我需要设置什么路径才能使其工作?谢谢。
你好.java:
root@overo:~/default# jamvm 你好
,你好 gumstix。
你好.java:
root@overo:~/test# jamvm Hello
Exception in thread "main" java.lang.NoClassDefFoundError: Hello
Caused by: java.lang.NoClassDefFoundError: class file has wrong name
java - JamVm 未在 Gumstix 上运行应用程序(使用 jpcap)
这里的新手非常抱歉提出任何愚蠢/明显的问题。我正在尝试在 Gumstix overo 板(Linux 内核 2.6.34)上运行 Java 应用程序。到目前为止,我已经安装了 JamVm (jvm)、jikes 编译器和类路径库(按照本教程中的说明)。我已经运行了一个 HelloWorld 程序,它看起来还不错。
现在,当我尝试运行另一个使用“jpcap”库的应用程序(比如“MyApp”)时,jvm 给了我一个如下所示的错误: 事件调度期间的异常:java.lang.UnsatisfiedLinkError: Native libarary 'jpcap' not found (作为文件'libjpcap.so')在 gnu.classpath.boot.library.path 和 java.library.path 。. .
此应用程序是使用 Netbeans 7.1 编译的。它生成了一个 dist 文件夹,其结构如下:
dist: |-- MyApp.jar |-- 自述文件 |-- lib(文件夹)|---|-- jpcap.jar |---|-- swing-layout-1.0.4.jar
自述文件说,为了部署这个应用程序,应该去 dist 文件夹并输入'java -jar "MyApp.jar"。当我这样做时('jamvm -jar MyApp.jar'),我得到了上面提到的错误。
我的 gumstix 板已经安装了 libpcap-1.1.1-r1.6。(我在我的板上找到了 /usr/lib/libpcap.so.1。)
有谁知道出了什么问题?任何建议将不胜感激。
Ps:几分钟前我已经在 gumstix-users 列表上发布了这个问题。我也在这里发帖,只是为了有更好的回复机会。希望这里的每个人都可以。