2016-06-04 31 views
7

Tôi cố gắng để chạy DynamoDB tại địa phương, với hướng dẫn tại đây:Lỗi: Không thể tìm thấy hoặc tải .library.path lớp học chính =

http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DynamoDBLocal.html

Tôi đã tải file zip và giải nén tất cả mọi thứ vào một thư mục.

tôi trên Windows 10

Trong Powershell, trong thư mục đó khi tôi chạy:
java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -sharedDb

tôi nhận được:

Error: Could not find or load main class .library.path=..DynamoDBLocal_lib

Tôi đã đọc mà rất giống nhau - gần nhất tôi có thể tìm thấy nhưng không hiệu quả: java.lang.UnsatisfiedLinkError: no sqljdbc_auth in java.library.path

Tôi không nghĩ rằng vấn đề là nó không thể tìm thấy lớp, nó là nó không biết những gì library.path có nghĩa là.

Tôi có java cài đặt:
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)

Trong PATH của tôi, tôi có C: \ ProgramData \ Oracle \ Java \ javapath mà tôi nghĩ là đúng.

Tôi có cần JDK không? không chỉ là JRE? Tôi đang làm điều gì khác sai?

Tôi nghĩ rằng đường dẫn trong ví dụ có thể không chính xác cho các cửa sổ, nhưng tôi không nghĩ đó là vấn đề, tôi đã thử hàng chục đường dẫn khác nhau, nhưng tất cả đều nói cùng một điều.

Trả lời

12

Chúng tôi thấy rằng PowerShell hiểu sai thông số -Djava.library.path. Kèm theo tên thông số hoặc toàn bộ tên & giá trị đã khắc phục được sự cố trong trường hợp của chúng tôi.

java -D"java.library.path"=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -sharedDb

hoặc

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

Những câu trả lời cho câu hỏi này cũng giúp How to pass Properties to jar from Powershell?

11

Đã thử lần cuối trước khi đăng câu hỏi, lần này chỉ với dấu nhắc lệnh bình thường thay vì powerhell và nó hoạt động. Con đường trong ví dụ đã làm việc tốt.

+0

Cảm ơn bạn rất nhiều cho câu hỏi của bạn và trả lời! đây là chính xác cùng một vấn đề tôi đã có và trả lời ur đã giúp tôi tìm ra giải pháp. – user2407334

+0

Vui lòng xem câu trả lời của @ Mike. Câu trả lời của ông cung cấp một giải pháp thay vì giải pháp thay thế. – Halil

Các vấn đề liên quan