2011-08-05 38 views
1

我開發的WebSphere 6.0它使用Java servlet.After部署和運行我的申請,我收到了以下類型的LinkageError類的應用程序(從服務器日誌):如何解決Java LinkageError異常?

錯誤500:java.lang中。 LinkageError:在定義類時出現LinkageError:student.operation.Action由於以下原因無法定義:student/operation/Action(不支持的major.minor版本50.0)這通常是由在類加載器層次結構中的多個位置定義一個類引起的。其他潛在的原因包括編譯具有不兼容方法簽名的類的較舊版本或較新版本。轉儲當前上下文類加載器層次結構:==>表示定義類加載器==> [0] [email protected]本地ClassPath:E:\ Program Files \ IBM \ SDP \ runtimes \ base_v6 \ profiles \ WTE_APPSRV61 \ installedApps \ gh-vdikcisv206Node1Cell \ DefaultEAR.ear \ Student.war \ WEB-INF \ classes; E:\ Program Files \ IBM \ SDP \ runtimes \ base_v6 \ profiles \ WTE_APPSRV61 \ installedApps \ gh-vdikcisv206Node1Cell \ DefaultEAR.ear \ Student .war \ WEB-INF \ lib \ asm.jar; E:\ Program Files \ IBM \ SDP \ runtimes \ base_v6 \ profiles \ WTE_APPSRV61 \ installedApps \ gh-vdikcisv206Node1Cell \ DefaultEAR.ear \ Student.war \ WEB-INF \ lib \ c3p0-0.9.0.4.jar;

+0

它有一個很好的解釋可能的原因。你是否經歷過所有這些? – Bozho

+0

是的。我理解這個問題。我在java6上編譯的所有java classess。所以我不明白我爲什麼會遇到版本問題。我希望得到你如何解決這個問題的幫助。 – Meena

+0

它似乎是用java編譯的東西5.清理你的項目 – Bozho

回答

0

LinkageError while defining class: student.operation.Action Could not be defined due to: student/operation/Action (Unsupported major.minor version 50.0)

student.operation.Action已根據Java 6的編譯(50.0相當於JDK 1.6編譯的類的版本),但使用的是JVM/JRE的較低版本在運行時。

確保你的運行環境也JDK 1.6

0

添加到Nivas的回答,請檢查您是否也包括部署過程中的任何其他罐子一樣student.operation.action。

如果您希望在編譯期間在JDK5 pass -source選項中運行JDK6編譯類。