2016-05-20 33 views
0

我已經下載AWS dynamodb zip文件並提取到d運行AWS dynamoDb:/ dynamoDB夾 當試着使用如下異常而在本地計算機

java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar 

異常經由命令提示運行發生

Exception in thread "main" java.lang.NoSuchFieldError: completionKey 
     at sun.nio.fs.WindowsNativeDispatcher.initIDs(Native Method) 
     at sun.nio.fs.WindowsNativeDispatcher.<clinit>(Unknown Source) 
     at sun.nio.fs.WindowsLinkSupport.getRealPath(Unknown Source) 
     at sun.nio.fs.WindowsPath.toRealPath(Unknown Source) 
     at sun.nio.fs.WindowsPath.toRealPath(Unknown Source) 
     at sun.util.calendar.ZoneInfoFile$1.run(Unknown Source) 
     at sun.util.calendar.ZoneInfoFile$1.run(Unknown Source) 
     at java.security.AccessController.doPrivileged(Native Method) 
     at sun.util.calendar.ZoneInfoFile.<clinit>(Unknown Source) 
     at sun.util.calendar.ZoneInfo.getTimeZone(Unknown Source) 
     at java.util.TimeZone.getTimeZone(Unknown Source) 
     at java.util.TimeZone.setDefaultZone(Unknown Source) 
     at java.util.TimeZone.getDefaultRef(Unknown Source) 
     at java.util.TimeZone.getDefault(Unknown Source) 
     at org.eclipse.jetty.util.DateCache.<init>(DateCache.java:88) 
     at org.eclipse.jetty.util.log.StdErrLog.<clinit>(StdErrLog.java:68) 
     at org.eclipse.jetty.util.log.Log.initStandardLogging(Log.java:185) 
     at org.eclipse.jetty.util.log.Log.initialized(Log.java:168) 
     at org.eclipse.jetty.util.log.Log.getLogger(Log.java:435) 
     at org.eclipse.jetty.util.log.Log.getLogger(Log.java:425) 
     at org.eclipse.jetty.util.IO.<clinit>(IO.java:44) 
     at org.eclipse.jetty.util.log.Log$1.run(Log.java:110) 
     at java.security.AccessController.doPrivileged(Native Method) 
     at org.eclipse.jetty.util.log.Log.<clinit>(Log.java:85) 
     at org.eclipse.jetty.util.component.AbstractLifeCycle.<clinit>(AbstractL 
ifeCycle.java:33) 
     at com.amazonaws.services.dynamodbv2.local.main.ServerRunner.createServe 
r(ServerRunner.java:123) 
     at com.amazonaws.services.dynamodbv2.local.main.ServerRunner.createServe 
rFromCommandLineArgs(ServerRunner.java:119) 
     at com.amazonaws.services.dynamodbv2.local.main.ServerRunner.main(Server 
Runner.java:70) 

我在我的Windows 32系統中有Java7 sdk。

回答

0

NoSuchFieldError如果應用程序試圖訪問或修改對象的指定字段,並且該對象不再具有該字段,則會拋出異常。在這種情況下,很可能該jar是針對一個版本的java(或其他依賴項)編譯的,並且您使用的是不兼容的不同版本。

我建議從support for Java7 ended as of April 2015開始更新到Java8。另外,請檢查您的jetty版本(因爲JVM之外的最後一次調用是由org.eclipse.jetty.util.DateCache.<init>(DateCache.java:88)引起的),以確保它兼容。

+0

問題是用java版本。 – JithPS