错误:找不到或装入主类 .library.path=

2022-09-02 02:55:55

我正在尝试在本地运行 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,我认为这是正确的。

我需要 JDK 吗?不只是JRE?我做错了别的事情吗?

我认为示例中的路径可能不适合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?


答案 2

在发布问题之前最后一次尝试,这次只是使用正常的命令提示符而不是powershell,它可以正常工作。示例中的路径工作正常。


推荐