Eclipse3.5EEでJavaのコンパイルエラーメッセージが発生!エラーとその意味を解説します

このQ&Aのポイント
  • Eclipse3.5EEでJavaのコンパイルエラーメッセージが発生しました。具体的には、import javax.persistence.GenerationType.IDENTITYの解決不能エラーと、source level is 1.5に関する構文エラーが表示されました。
  • このエラーメッセージは、import文の解決不能と、Javaのソースレベルが1.5以上でない場合にのみ利用可能な静的インポートができないという意味です。
  • 環境はFedora11で、Eclipse EE Developer 3.5 (Galileo)を使用しています。Javaのバージョンは1.6.0_14です。
回答を見る
  • ベストアンサー

Eclipse3.5EEでJavaのコンパイルエラーメッセージ

がでました。 以下の通りです。 Multiple markers at this line - The import javax.persistence.GenerationType.IDENTITY cannot be resolved - Syntax error, static imports are only available if source level is 1.5 これはどういう意味でしょうか? 特に「source level is 1.5」の意味を教えてください。 環境は Fedora11 Eclipse EE Developer 3.5 (Galileo) java version "1.6.0_14" Java(TM) SE Runtime Environment (build 1.6.0_14-b08) Java HotSpot(TM) Server VM (build 14.0-b16, mixed mode) です。

  • reiman
  • お礼率73% (794/1076)
  • Java
  • 回答数1
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
noname#94983
noname#94983
回答No.1

コンパイルするためにはJava 1.5では駄目、ということ。おそらく、コンパイルの準拠レベルが1.5になっているのだろうと思う。「プロジェクト」の「プロパティ」メニューを選び、「Javaコンパイラー」の項目にあるコンパイラー準拠レベルが1.6になっているか確認する。おそらく1.5以前になっているのではないかと思う。

reiman
質問者

お礼

ありがとうございます。 1.4になっていたので1.6にすれば治りました。 しかしJDK1.6をいれていても1.4になってしまうのはEclipseの盲点ですね。

関連するQ&A

  • java -version "1.8.0_144"

    # java -version java version "1.8.0_144" Java(TM) SE Runtime Environment (build 1.8.0_144-b01) Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode) です。 これからどうするか解りません。 どうかご回答のほど宜しくお願い申し上げます。

    • ベストアンサー
    • Java
  • UnsupportedClassVersionErrorのついて

    JSPからサーブレットに制御を移した時点でこのエラーが出ます。 どういった対処方法がありますでしょうか? Tomcatのバージョンは5.0.28 下記いずれも確認済。 <コンパイラのバージョン> java version "1.5.0_09" Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_09-b01) Java HotSpot(TM) Client VM (build 1.5.0_09-b01, mixed mode, sharing) <JREのバージョン> java version "1.5.0_09" Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_09-b01) Java HotSpot(TM) Client VM (build 1.5.0_09-b01, mixed mode, sharing)

    • ベストアンサー
    • Java
  • switch分が機能しません。

    お世話になります。 下記のswitchのソースで文字列の値を 判定したいのですが String lot = 収録状況表示; switch (lot) { case "1": out.print("収録!"); break; case "2": out.print("未収録!"); break; default: out.print(" "); break; eclipseで機能しないPCがあります。 考えられる原因はなにかありますでしょうか?? 因みに きのうしないPCは switch (lot) {の箇所に Cannot switch on a value of type String for source level below 1.7. 変換可能な int 値または enum 定数のみが許可されています と表示されます。 機能しているPC  java -version "1.7.0_02 Java(TM) SE Runtime Environment (build 1.7.0_02-b13) Java HotSpot(TM) Client VM (build 22.0-b10, mixed mode, sharing) 機能していないPC    java version "1.7.0_03" Java(TM) SE Runtime Environment (build 1.7.0_03-b05) Java HotSpot(TM) Client VM (build 22.1-b02, mixed mode, sharing) 以上よろしくお願い致します。

    • ベストアンサー
    • Java
  • javacとjavaのバージョン違い

    失礼致します。 コマンドラインからclassファイルを実行しようとしています。 しかし、実行したところ「java.lang.UnsupportedClassVersionError」というエラーが出ます。コンパイラとjavaのバージョンは次の通りです。 C:\work>javac -J-version java version "1.4.2_12" Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_12-b03) Java HotSpot(TM) Client VM (build 1.4.2_12-b03, mixed mode) C:\work>java -version java version "1.3.1_01" Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.1_01) Java HotSpot(TM) Client VM (build 1.3.1_01, mixed mode) このため、バージョンを一致させる必要があるかもしれません。 ですが、あるプロジェクトに関わっており、バージョンを変更するのは容易ではありません。何か、バージョンを変更する以外でよい方法はございますでしょうか? また、バージョンをいじるならどちらを合わせるべきでしょうか?

  • Javaのプログラムで文字が出力できません

    Javaについて勉強中です。 Java SE Development Kit 7u6というものをoracleのサイトがらダウンロードし、インストールしました。 >javac -versionと入力すると javac 1.7.0_06 >java -versionだと java version "1.7.0_06" Java(TM) SE Runtime Environment (build 1.7.0_06-b24) Java HotSpot(TM) Client VM (build 23.2-b09, mixed mode, sharing) と表示されるのでインストールはうまくできていると思うのですが、 class HelloWorld { public static void main(String[] args) { System.out.println("Hello World!!"); } } をtest.javaで保存し、javac test.javaと入力してもコマンドプロンプトには何も表示されません。 なぜでしょうか?教えてくださいm(_ _)m

    • ベストアンサー
    • Java
  • コンパイル成功後の当エラーからの回復方法が調べられませんでした。

    みなさん、こんにちわ。 仕事で必要性を感じたため、 5月よりjavaの勉強を開始した者です。 まったくの素人ですが、宜しくお願い致します。 「O'REILLY(オラーリー)」の本で、JAVAの勉強しておりまして、 今回も「O'REILLY(オラーリー)」の本にも掲載されていたプログラムと 同一のプログラムファイルを自分の環境にも作成し、 無事、javacでのコンパイル作業を成功させました。 その後、当プログラムを実行したときに、 下記エラーが表示され、 調べ方が悪いせいか、 いまいち解決に至る方法をWEBで見つけられず困ってしまい、 ご相談させてもらう事にしました。 アドバイスいただけると、とてもありがたいです。 ■プログラム内容は以下URLのものと同一になります。 http://www.cafeaulait.org/books/jnp2e/examples/15/BinarySaver.java ■エラー内容は以下の通りです。 [root@hostname test]# java SourceViewer http://www.oreilly.com Exception in thread "main" java.lang.NoClassDefFoundError: SourceViewer Caused by: java.lang.ClassNotFoundException: SourceViewer at java.net.URLClassLoader$1.run(URLClassLoader.java:200) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:188) at java.lang.ClassLoader.loadClass(ClassLoader.java:306) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276) at java.lang.ClassLoader.loadClass(ClassLoader.java:251) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319) 的外れなのかもしれませんが、 「javaとjavacのバージョンの問題なのか?」とも感じ、 以下の通りで、 異なるバージョンは使用していない旨確認できました。 [root@hostname test]# javac -J-version  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ java version "1.6.0_06" Java(TM) SE Runtime Environment (build 1.6.0_06-b02) Java HotSpot(TM) Client VM (build 10.0-b22, mixed mode, sharing) [root@hostname test]# java -version  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ java version "1.6.0_06" Java(TM) SE Runtime Environment (build 1.6.0_06-b02) Java HotSpot(TM) Client VM (build 10.0-b22, mixed mode, sharing) CLASSPATHを確認しましたが、 やはり変更されておらず、 今までと同様でした。 上記同様に、 以下URLにあるプログラムについても、 実行してみましたが、 コンパイルまでは正常に完了し、 プログラムを実行しようとすると、 同じエラーが出てきました。 http://www.cafeaulait.org/books/jnp2e/examples/15/BinarySaver.java

    • ベストアンサー
    • Java
  • cmdで表示されるjavaのversionが変更できません。

    J2RE1.3.1_09をアンインストールし、 J2RE1.2.2、J2RE1.4.2_03、J2SDK1.4.2_12が インストールされている状況なのですが、 コマンドプロンプトでjava -versionを実行すると、 java version "1.3.1_01" Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.1_01) Java HotSpot(TM) Client VM (build 1.3.1_01, mixed mode) と表示されてしまいます。 No.1495883の質問のように、Java-Pluginのキャッシュをクリアしても versionが変更できません。 どなたか変更方法をご存知の方がいましたら、アドバイスをよろしくお願いします。

    • ベストアンサー
    • Java
  • コンパイラ(javac)と実行(java)が違う。

    コンパイラ(javac)と実行(java)は同じバージョンでしょうか。 javac -version と java -version で比べてみてください。 違いましたら、同じバージョンのでコンパイルしましょう。 C:\JAVA>java -version java version "1.8.0_261" Java(TM) SE Runtime Environment (build 1.8.0_261-b12) Java HotSpot(TM) Client VM (build 25.261-b12, mixed mode) C:\JAVA>javac -version javac 14.0.1 バージョンが違います。 どうやって、合わせるのでしょうか? 度々申し訳ございません。 ご回答のほど、宜しくお願い申し上げます。

    • ベストアンサー
    • Java
  • 可変長引数リストを用いたプログラムがコンパイル不可

    可変長引数リストを用いたプログラムがコンパイルできません。 【Sample.javaの内容】 class MyClass extends java.lang.Object { void meth(String ... s) { for (int i=0; i<s.length; i++) { System.out.println(s[i] + " : "); } System.out.println(); } } public class Sample extends java.lang.Object { public static void main (String args[]) { MyClass mc = new MyClass(); mc.meth(); mc.meth("what", "is", "this"); mc.meth("this", "is", "an", "example"); } } 【普通にjavacでコンパイル】 >javac Sample.java Sample.java:2: <identifier> がありません。 void meth(String ... s) { ^ Sample.java:8: <identifier> がありません。 } ^ エラー 2 個 【-sourceオプションをつけてコンパイル】 >javac -source 1.5 Sample.java javac: 1.5 は無効なソースバージョンです。 (以下javacのusageが延々と表示される) ※-version 1.6でも同様の結果でした。 【バージョン情報】 C:\>java -version java version "1.6.0_03" Java(TM) SE Runtime Environment (build 1.6.0_03-b05) Java HotSpot(TM) Client VM (build 1.6.0_03-b05, mixed mode, sharing)

    • ベストアンサー
    • Java
  • JAVAのパス設定を教えてください。

    パソコンとプログラム初心者レベルです。 JAVAのコンパイルがうまくいきません。 これまでの経緯としては、JAVAの開発環境「J2SDK-1.4.2_15」のwindows版をダウンロードして、インストールしたのですが、そのとき間違えてNetBeans5.5.1もダウンロードしました。 コマンドプロンプトで、C:\src\hello>javac helli.javaでEnterを押すと、「JAVAC は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチファイルとして認識されていません。」と表示されます。 また、インストールしたものは、「J2DK-1.4.2_15」なのに、インストール確認でJava-Versionを入力すると、 Java(TM)2Runtime Envirnment,Standard Edition(build1.6.1_ 01-b01)Java Hotspot(Tm) Client VM(Built1.6.1_01-b01,Mixed Mode)となり、違うバージョンらしい番号が出ます。 どちらの番号も試してみましたがうまくいきません。 また、Administratorのユーザー環境設定とシステム環境変数はどう違うのでしょうか。(どちらもパス入力しました。) お詳しい方おられましたら教えてください。

    • ベストアンサー
    • Java

専門家に質問してみよう