我在Ubuntu 16.04的TinyOs中工作。当我运行Blink程序时,出现以下错误:
[INFO] script
2538 bytes in ROM
56 bytes in RAM
[INFO] size (toolchain):
text data bss dec hex filename
2596 2 56 2654 a5e build/telosb/main.exe
[INFO] generating symbol table
[INFO] generating listing
[INFO] creating ihex file
[INFO] writing TOS image
[INFO] writing TOS buildinfo
[INFO] running the wiring check
<JAVA_HOME>/lib/ext exists, extensions mechanism no longer supported; Use
-classpath instead.
.Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
../../support/make/Makerules:362: recipe for target 'wiring_check' failed
make: *** [wiring_check] Error 1有谁知道为什么会发生这个错误吗?
发布于 2017-08-28 00:34:43
这是由于Java工具链试图使用在最新的(版本9) TinyOS中不推荐使用的特性造成的。您将需要安装较旧的Java JRE版本,并将JAVA_HOME设置为此较旧的版本:
java -version来检查当前的版本。如果不是版本9或更高版本,停止-这可能不是你需要的解决方案。uname -i来确定您的操作系统是32位还是64位。选择以“.tar.gz”结尾的版本(.rpm适用于其他类型的Linux)。您将需要使用Oracle帐户登录,如果您没有one.sudo cp,例如sudo cp -r jre-8u73-linux-x64.tar.gz /usr/local/java (你的文件名可能是.tar.gz你需要从压缩的the文件中解压文件。例如,您现在可以删除.java的权限。例如,您可以使用chown -R jre-8u73-linux-x64
sudo update-java-alternatives --set /path/to/java/versionexport JAVA_HOME=/usr/local/java/jre-8u73-linux-x64 export PATH=$PATH:$HOME/bin:$JAVA_HOME/bin java -version使用您的旧版本,并检查java -version现在是否为您提供了旧版本。一种更好的方法是只为TinyOS创建一个独立的开发VM环境,因为您并不希望在您的主机上安装旧版本的Java。你可以使用像Vagrant这样的东西来做这件事。如何做到这一点太长了,无法回答,请查看their documentation。
https://stackoverflow.com/questions/45814933
复制相似问题