RJava के कारण R में एक पैकेज लोड करने की कोशिश करते समय समस्याएं


93

जब मैं R में require(xlsx)पैकेज लोड करने के लिए टाइप करता हूं xlsx, तो निम्न संदेश दिखाए जाते हैं:

> require(xlsx)
Loading required package: xlsx
Loading required package: xlsxjars
Loading required package: rJava
Error : .onLoad failed in loadNamespace() for 'rJava', details:
  call: fun(libname, pkgname)
  error: JAVA_HOME cannot be determined from the Registry
Failed with error:  ‘package ‘rJava’ could not be loaded’

मैंने rJavaपैकेज को मैन्युअल रूप से लोड करने की कोशिश की है, लेकिन यह त्रुटि संदेश मिला है:

require(rJava)
Loading required package: rJava
Error : .onLoad failed in loadNamespace() for 'rJava', details:
  call: fun(libname, pkgname)
  error: No CurrentVersion entry in Software/JavaSoft registry! Try re-installing Java and make sure R and Java have matching architectures.

क्या आपके पास समस्या को हल करने के बारे में कोई सुझाव है?


4
स्थापित करने के लिए प्रयास करें rJava... पढ़ें इस
agstudy

6
कौन सा प्लेटफ़ॉर्म? अगर विंडोज है तो यह मददगार हो सकता है।
dardisco

भी, आपकी समस्या आपको पहले .xlsx फ़ाइल को एक सीएसवी में सहेजने और फिर read.csv का उपयोग करने की अनुमति देती है, बल्कि .xlsx फ़ाइल में पढ़ने की कोशिश करने के बजाय
जेनेरिक_यूज़र

2
यदि अंतिम सूचीबद्ध उत्तर (इस बिंदु पर 16 वोट) ने आपके लिए इसे निर्धारित किया है, तो कृपया उत्तर को स्वीकार किए अनुसार चिह्नित करें।
स्लैक

मैं इस मुद्दे में भी भाग गया, लेकिन हैडली विकम के readxlपैकेज का उपयोग करके इसे बदल दिया । यहाँ के बारे में अधिक चर्चा - एक विकल्प के लिए r और देखो में libraryxlsx स्थापित नहीं कर सकता
बेन

जवाबों:


123

कारण संभवतः इस तथ्य से जुड़ा हुआ है कि आप 64-बिट ओएस और आर संस्करण का उपयोग कर रहे हैं, लेकिन जावा में समान वास्तुकला के साथ स्थापित नहीं है। आपको इस पृष्ठ से जावा 64-बिट डाउनलोड करने के लिए क्या करना है: https://www.java.com/en/download/manual.jsp

उसके बाद बस xlsxपैकेज को पुनः लोड करने का प्रयास करें । आपको आर को फिर से शुरू करने की आवश्यकता नहीं है।


2
(+1) मुझे यकीन नहीं है कि आर का संदेश पूरी तरह से इस समस्या की ओर इशारा करता है, लेकिन मेरे लिए यह मामला था! सुनिश्चित करने के लिए, आप जांच कर सकते हैं। यदि आप 64 बिट ओएस, और 64 बिट आर चला रहे हैं, तो कमांड लाइन चलाएं और कोशिश करें java -d64 version। यदि आपके पास 64 बिट जावा काम कर रहा है, तो यह सिस्टम पथ की समस्या हो सकती है।
एडमो

3
क्या आपका मतलब था java -d64 -version?
हैरिसन

8

मुझे इसी तरह की समस्या थी जो मेरे लिए काम करती थी JAVA_HOME सेट करना। मैंने इसे पहले R में थकाया:

Sys.setenv(JAVA_HOME = "C:/Program Files/Java/jdk1.8.0_101/")

और जब यह वास्तव में काम करता है तो मैंने इसे सिस्टम गुण -> उन्नत -> पर्यावरण चर में एक नया सिस्टम चर जोड़कर सेट किया। मैंने फिर R / RStudio को पुनः आरंभ किया और सब कुछ काम किया।


7

इसका कारण यह है कि या तो जावा संस्करणों में से एक (32 बिट / 64 बिट) आपके कंप्यूटर से गायब है। दोनों Jdks स्थापित करने का प्रयास करें और कोड चलाएँ।
Jdks स्थापित करने के बाद R खोलें और कोड टाइप करें

system("java -version")

यह आपको स्थापित Jdk का संस्करण देगा। फिर rJava पैकेज लोड करने का प्रयास करें। इसने मेरे लिए काम किया।


4

मेरा मुद्दा भी ऐसा ही था। यह आश्रित पैकेज 'rJava' के कारण होता है। एक अलग उपयोग करने के लिए आर को फिर से निर्देशित करके इस समस्या को दूर किया जा सकता है JAVA_HOME

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

इसने मेरे लिए काम किया।


4

यदि आपके पास RStudio में यह त्रुटि है, तो उपरोक्त लॉरेन के पर्यावरण कोड का उपयोग करें और अपने R संस्करण को टूल, ग्लोबल विकल्प में 32 बिट संस्करण में बदलें। यदि आपके पास एक नया संस्करण है, तो 32 बिट और 64 बिट आर दोनों विकल्प होने चाहिए। इसके लिए R के पुनरारंभ की आवश्यकता होगी, और अपने मेमोरी विकल्पों को सीमित करें। हालांकि jre के 64 बिट संस्करण को स्थापित करने की आवश्यकता नहीं होगी।


2

एक वैकल्पिक पैकेज जिसे आप उपयोग कर सकते हैं वह है रीडएक्सएल । इस पैकेज में बाहरी निर्भरता की आवश्यकता नहीं है।


2

मुझे लगता है कि मुझे संकल्प मिला क्योंकि मुझे भी यही समस्या थी!

मेरा फिक्स 32 बिट और 64 बिट जेआरई (जावा रनटाइम एनवायरनमेंट) संस्करण 8 अद्यतन 181 को स्थापित करने के लिए था। (मुझे किसी अन्य एप्लिकेशन के लिए 32 बिट की आवश्यकता है, लेकिन आपका फिक्स अपने आप 64 बिट को फिर से स्थापित कर सकता है।)


1

लिंक में उत्तर ने मेरी समस्या हल कर दी।

रिज़ॉल्यूशन से पहले, मैंने विंडोज़ के वातावरण में JAVA_HOME जोड़कर कोशिश की। इसने इस त्रुटि को हल किया लेकिन एक और मुद्दा बनाया। उपरोक्त लिंक में समाधान अतिरिक्त मुद्दों को बनाने के बिना इस मुद्दे को हल करता है।


0

यदि आपके पास macOS के साथ यह समस्या है, तो यहां कोई आसान तरीका नहीं है :( विशेष रूप से, जब आप R3.4 का उपयोग करना चाहते हैं। मैं वहां पहले से ही मौजूद हूं;)

R 3.4, rJava, macOS और इससे भी अधिक गड़बड़;)

R3.3 के लिए थोड़ा आसान नहीं है (R3.3 विभिन्न संकलक का उपयोग करके संकलित किया गया था)।

आर, जावा, आरजेवा और मैकओएस रोमांच

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.