以下の手順に従って、DynamoDB をローカルで実行しようとしています:
http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DynamoDBLocal.html
zip ファイルをダウンロードし、すべてをフォルダーに解凍しました。
私はWindows 10を使用しています。
Powershell では、そのディレクトリで次を実行します:
java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -sharedDb
次のような結果になります:
Error: Could not find or load main class .library.path=..DynamoDBLocal_lib
非常によく似た以下の記事を読みました。私が見つけた中では一番近いものでしたが、役に立ちませんでした。java.lang.UnsatisfiedLinkError: java.library.path に sqljdbc_auth がありません
問題はクラスが見つからないということではなく、library.path の意味がわからないということだと思います。
Javaがインストールされています:
C:\Dynamo> java -version java version "1.8.0_91" Java(TM) SE Runtime Environment (build 1.8.0_91-b15) Java HotSpot(TM) Client VM (build 25.91-b15, mixed mode)
私の PATH には C:\ProgramData\Oracle\Java\javapath があり、これは正しいと思います。
JRE だけではなく JDK も必要ですか? 何か他の間違いをしているのでしょうか?
例のパスは Windows では正しくない可能性があると思いますが、それが問題だとは思いません。何十もの異なるパスを試しましたが、すべて同じ結果になります。
ベストアンサー1
PowerShell がパラメータを誤って解釈していることがわかりました-Djava.library.path
。パラメータ名または名前と値全体を囲むことで、このケースでは問題が解決しました。
java -D"java.library.path"=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -sharedDb
または
java "-Djava.library.path=./DynamoDBLocal_lib" -jar DynamoDBLocal.jar -sharedDb
この質問への回答も役立ちましたPowershell から jar にプロパティを渡す方法は?