2016-06-09 17 views
14

Trong khi tải rJava gói, tôi nhận được lỗi này:R - Lỗi: .onLoad thất bại trong loadNamespace() cho 'rJava'

Error : .onLoad failed in loadNamespace() for 'rJava', details: 
    call: inDL(x, as.logical(local), as.logical(now), ...) 

error: unable to load shared object 'C:/Users/ankitagarwal5/Documents/R/win-library/3.2/rJava/libs/x64/rJava.dll': 
    LoadLibrary failure: %1 is not a valid Win32 application. 

In addition: Warning message: 
    package ‘rJava’ was built under R version 3.2.3 
Error: package or namespace load failed for ‘rJava’ 

tôi gọi bài viết khác nhau trên StackOverflow và cố gắng để thực hiện thay đổi cho phù hợp, nhưng không đã làm việc. Đây là các bước khác nhau mà tôi đã theo dõi để giải quyết vấn đề:

if (Sys.getenv("JAVA_HOME")!="") 
    Sys.setenv(JAVA_HOME="") 
library(rJava) 

Điều này không hiệu quả.

Sau đó, tôi cố gắng này:

options(java.home="C:\\Program Files\\Java\\jre1.8.0_91\\") 
library(rJava) 

này đã không làm việc một trong hai.

jvm.dll của tôi là ở vị trí này trong tôi Windows 7 64 bit OS - C: \ Program Files (x86) \ Java \ jre1.8.0_91 \ bin \ client

Tôi cũng đã thêm C:\Program Files (x86)\Java\jre1.8.0_91\bin\client vào PATH của tôi biến trong các biến môi trường của tôi và khởi động lại RStudio và cố gắng cài đặt và tải lại rJava. Điều đó cũng không hiệu quả.

Tôi thực sự đánh giá cao nếu ai đó có thể giúp tôi giải quyết vấn đề này.

Xin cảm ơn các bạn!

+0

Cố gắng chạy từ trình bao 'R CMD javareconf' và cài đặt lại' rJava'. Không đảm bảo tất nhiên. – nicola

+0

Vui lòng không chỉnh sửa câu trả lời của bạn thành câu hỏi. Thay vào đó, bạn phần trả lời ở cuối trang. – josliber

+1

@josliber, đã thực hiện các thay đổi được đề xuất. Cảm ơn . – user3205469

Trả lời

19

này làm việc cho tôi -

Lỗi này thường được giải quyết bằng cách cài đặt một phiên bản Java (tức là 64-bit Java hoặc 32-bit Java) phù hợp với loại hình phiên bản R mà bạn đang sử dụng (tức là 64-bit R hoặc 32-bit R). Vấn đề này có thể dễ dàng ảnh hưởng đến người dùng Windows 7, vì họ có thể đã cài đặt phiên bản Java khác với phiên bản R họ đang sử dụng.

Lưu ý rằng cần phải tải xuống và cài đặt thủ công phiên bản JAVA 64 bit. Theo mặc định, trang tải xuống cung cấp phiên bản 32 bit.

Bạn có thể chọn phiên bản Java chính xác mà bạn muốn cài đặt từ liên kết này. Nếu bạn có thể (vì lý do nào đó) làm việc trên cả hai phiên bản R, bạn có thể cài đặt cả hai phiên bản Java (Cài đặt "Môi trường chạy Java" có thể đủ tốt cho nhu cầu của bạn). (Nguồn: Uwe Ligges)

Các giải pháp có thể khác đang cố gắng cài đặt lại rJava.

Nếu điều đó không làm việc, bạn cũng có thể tự thiết lập thư mục của vị trí Java của bạn bằng cách thiết lập nó trước khi tải thư viện:

Sys.setenv(JAVA_HOME='C:\\Program Files\\Java\\jre7') # for 64-bit version 
Sys.setenv(JAVA_HOME='C:\\Program Files (x86)\\Java\\jre7') # for 32-bit version 
library(rJava) 

Tham khảo liên kết này - http://www.r-bloggers.com/how-to-load-the-rjava-package-after-the-error-java_home-cannot-be-determined-from-the-registry/

+1

Làm việc hoàn hảo cho tôi sau khi săn bắn. Làm cho ý nghĩa hoàn toàn, muốn thông báo gỡ lỗi trong gói rJava được một chút chỉ vào hướng này. – ddisqq

0

Tôi đoán hệ điều hành của bạn kiến trúc và kiến ​​trúc R không phù hợp. Nếu họ được phù hợp, sau đây có thể là vấn đề

Nó làm việc cho tôi sau khi tôi thêm các đường dẫn thư viện R vào danh sách các biến môi trường trên cửa sổ của tôi 7.

Vì vậy,

Thêm 'C:/Người dùng/Rohan-PC/Documents/R/win-library/3.1 'đường dẫn này vào danh sách biến Path trong danh sách biến hệ thống (không bị nhầm lẫn với biến PATH trong biến người dùng). Khởi động lại R và thử tải thư viện. Nó hoạt động !!!!!

4

Tôi gặp phải vấn đề tương tự. Hãy chắc chắn kiểm tra đường dẫn tệp cho Java. Để giải quyết lỗi tôi cần tải xuống phiên bản Java 64 bit. Tuy nhiên đoạn mã sau vào R đã không làm việc như thư mục không chính xác cho các phiên bản mới nhất cho Java:

Sys.setenv(JAVA_HOME='C:\\Program Files\\Java\\jre7') # for 64-bit version 

Thay vào đó tôi đã thay đổi tên thành:

Sys.setenv(JAVA_HOME='C:\\Program Files\\Java\\jre1.8.0_144') 

Hy vọng rằng sẽ giúp

0

tôi cố gắng những gì người khác đã nói không tận dụng. Đối với tôi giải pháp là để loại bỏ các thư mục cũ và các phím tắt của R phiên bản 32 bit trên máy tính của tôi mà vẫn ở đó ngay cả sau khi gỡ cài đặt.

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