我正在尝试从我相对较新的 linux 命令行运行所有内容。
我正在尝试编译一个使用一些外部库的类,当我执行 javac classname.java 时,我收到警告......
It is recommended that the compiler be upgraded.
warning: /opt/pi4j/lib/pi4j-core.jar(com/pi4j/io/gpio/GpioPinOutput.class): major version 51 is newer than 50, the highest major version supported by this compiler.
即使这只是一个警告 - 我已经尝试在类文件上运行 java,这会导致
Exception in thread "main" java.lang.UnsupportedClassVersionError: com/pi4j/io/gpio/GpioFactory : Unsupported major.minor version 51.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:634)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:277)
at java.net.URLClassLoader.access$000(URLClassLoader.java:73)
at java.net.URLClassLoader$1.run(URLClassLoader.java:212)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
at ControlGpioExample.main(ControlGpioExample.java:9)
我搜索了stackoverflow,发现了一篇建议使用交叉编译的帖子——我试过了
javac -target 1.6 ControlGpioExample.java
我怎么知道要使用哪个目标?我是不是一直都在经历它们,直到它起作用?!
谢谢