javahの失敗に関するさまざまな投稿を確認しましたが、このエラーで発生するものは見つかりませんでした。
error: cannot access com.acme.ndktest.Sample
bad class file: bin/classes/com/acme/ndktest/Sample.class
class file has wrong version 50.0, should be 49.0
Please remove or make sure it appears in the correct subdirectory of the classpath.
com.sun.tools.javac.util.Abort
at com.sun.tools.javac.comp.Check.completionError(Check.java:169)
at com.sun.tools.javadoc.DocEnv.loadClass(DocEnv.java:149)
インターネットで見つけた最も近い情報は、この http://yonghoon.wikidot.com/ndk#toc4でした。
JVMの新しいリリースごとに、クラスファイルのバージョン番号が増加します。以下のリストは、私が知っているクラスのバージョン番号を示しています。Java6:バージョン50.0 Java 5(1.5):バージョン49.0 Java 1.4.2:バージョン48.0
1.6を使用していますが、EclipseはJDK準拠1.6に設定されています。/usr/lib/jvm/java-6-sun/jdk1.6.0_31/bin/javahフォルダーからjavahを実行しています。
/usr/lib/jvm/java-6-sun/jdk1.6.0_31/bin/javah -classpath bin / classes -jni com.acme.ndktest.Sample
1.6を使用しているのに、なぜ49になるはずだと表示されるのかわかりません。
詳細情報javac-version->javac 1.6.0_31 javap -v -classpath bin / classes com.acme.ndktest.Sample | grepバージョンマイナーバージョン:0、メジャーバージョン:50
/ etc / Alternativesでは、ほとんどのjavaアイテムはjavaやjavacのようにjava-6-sunを指していますが、javawsはjava-6-openjdk-amd64を指しています。
私はEclipse3.7を実行しています。また、Antはこれらのヘッダーの構築と関係がありますか