2008-10-22 61 views
0

在Eclipse 3.4中,我試圖對大型產品做一些性能測試,其中一個包含的庫是Java3D項目中的vecmath.jar(javax.vecmath包)。想昨天我得到運行此異常/錯誤時,一切工作正常,然後啓動起來後沒多久:Eclipse類版本bug

java.lang.UnsupportedClassVersionError: javax/vecmath/Point2f (Unsupported major.minor version 49.0) 

我相信這意味着,我想一個java 1.5類文件加載到1.4 jvm這是不受支持的。然而,當我到類文件來檢查這一點,我在Eclipse類文件瀏覽器看到這個:

Compiled from Point2f.java (version 1.2 : 46.0, super bit) 

因此類加載器說,這是49.0版本,但類文件表示,其46.0。我已經嘗試清理並完全重建項目,我已經確認該項目的編譯器版本是1.4,JRE是1.4,並且運行配置選擇了1.4 jvm。我完全停留在此,有沒有人有任何想法可能導致這一點?

感謝

===編輯===

事實證明,Java3D中的一個版本與Java 1.4.2已經被安裝在C這是不兼容的:\ Program Files文件\的Java \ j2re1。 4.2_18 \ LIB \分機。我安裝了一個較新版本的Java3D以在java6中進行遊戲,我想它會在我的所有JRE中安裝這些庫,甚至是那些不兼容的庫。

回答

2

你的類路徑上可能有另一個javax.vecmath.Point2f嗎?

0

我相信JRE 1.5是最新版本的Java3D所必需的。

0

你檢查:

Window 
    -> Preferences 
     -> Java 
      -> Compiler 
       -> Compiler Compliance Level 

要看看這個值是扭曲?

0

您必須添加

  1. 「JAVA_HOME:C:\ Program Files文件\的Java \ jdk1.6.0_16」
  2. 「路徑:C:\ Program Files文件\的Java \ jdk1.6.0_16 \斌;」

到您的環境變量!