2009-12-14 58 views
1

你好,我安裝在Windows上的jetty 6.1.8開發,jetty 6.1.8是否支持jdk 1.5?

我配置它在eclipse中運行jdk 1.5,我的項目配置爲使用相同的jdk構建。

我的問題是我的項目無法使用jetty服務器運行。它抱怨下面的錯誤信息。請注意,當沒有項目添加時,我可以毫無錯誤地啓動碼頭。如果我配置碼頭使用JDK 1.6,那麼我可以添加我的項目,一切工作正常。那麼這是否意味着jetty 6.1.8不支持jdk 1.5?

java.lang.UnsupportedClassVersionError: Bad version number in .class file 
    at java.lang.ClassLoader.defineClass1(Native Method) 
    at java.lang.ClassLoader.defineClass(ClassLoader.java:620) 
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124) 
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:260) 
    at java.net.URLClassLoader.access$100(URLClassLoader.java:56) 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:195) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:188) 
    at org.mortbay.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:366) 
    at org.mortbay.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:337) 
    at org.mortbay.util.Loader.loadClass(Loader.java:91) 
    at org.mortbay.util.Loader.loadClass(Loader.java:71) 
    at org.mortbay.jetty.servlet.Holder.doStart(Holder.java:73) 
    at org.mortbay.jetty.servlet.ServletHolder.doStart(ServletHolder.java:233) 
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39) 
    at org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:612) 
    at org.mortbay.jetty.servlet.Context.startContext(Context.java:139) 
    at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1220) 
    at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:510) 
    at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:448) 
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39) 
    at org.mortbay.jetty.deployer.ContextDeployer.deploy(ContextDeployer.java:268) 
    at org.mortbay.jetty.deployer.ContextDeployer.access$000(ContextDeployer.java:67) 
    at org.mortbay.jetty.deployer.ContextDeployer$ScannerListener.fileAdded(ContextDeployer.java:89) 
    at org.mortbay.util.Scanner.reportAddition(Scanner.java:417) 
    at org.mortbay.util.Scanner.reportDifferences(Scanner.java:331) 
    at org.mortbay.util.Scanner.scan(Scanner.java:286) 
    at org.mortbay.util.Scanner$1.run(Scanner.java:246) 
    at java.util.TimerThread.mainLoop(Timer.java:512) 
    at java.util.TimerThread.run(Timer.java:462) 

回答

0

this page,碼頭6.1.x支持的Java 1.6。我懷疑你已經下載了使用Java 1.6編譯器編譯的Jetty JAR文件。獲得1.5個JAR並且一切都會很好。

編輯:我剛剛從here下載了6.1.8 ZIP文件,其中的JAR文件是爲Java 1.4或更高版本(代碼版本#48)編譯的。你必須從某個地方撿起一個狡猾的JAR文件!

+0

其實這是我的壞。我沒有更改eclipse中的編譯器設置以使用1.5 jdk構建,這就是爲什麼當我將項目添加到jetty時,它抱怨了不同的jdk版本。 – dara 2009-12-16 02:11:44