ऐसा करने का एक "सरल" तरीका है और ऐसा करने के लिए कुछ कठिन तरीका है।
myCommand <- paste("/path/to/java", argument1, argument2, sep=" ")
system(shQuote(myCommand))
फिर जो कुछ भी आर समारोह समझ में आता है का उपयोग कर उत्पादन फ़ाइल में लिखा है: तो मैं सरल समाधान की ओर झुक रहा एक साधारण आदमी हूँ।
कुछ हद तक कठिन समाधान आपके जावा कोड को संपादित करना है, इसलिए यह stdin से नहीं पढ़ता है, लेकिन वेक्टर, या अन्य जावा ऑब्जेक्ट पास हो जाता है। मैं वास्तव में कैसे अपने जावा कोड में परिवर्तन करने के बारे में सामान्यीकरण नहीं कर सकते, लेकिन जावा समारोह अंततः एक वेक्टर खिलाया जा करने की जरूरत है, तो आप यह कुछ इस तरह करते हैं:
.jinit()
v <- .jnew("java/util/Vector")
rVector <- as.character(1:10)
addToV <- function(item){
v$add(item)
}
sapply(rVector, addToV)
मैं हमेशा में प्रकार के साथ काम कर पाते हैं जैसा कि आप ऊपर देख सकते हैं, आरजेवा काफी दर्द हो सकता है।
एक टिप जो आपको काफी समय बचाएगी यह है: जब आपके पास जावा जावा में जावा ऑब्जेक्ट बनाया गया है तो आप नाम टाइप करके, एक डॉलर का चिह्न टाइप करके और फिर हिट टैब कर सकते हैं। तो प्रकार "वी $" ऊपर बनाया v वस्तु का उपयोग करने और आप इस मिलना चाहिए:
1> v$
v$add( v$hashCode() v$contains( v$size() v$elementAt( v$capacity() v$containsAll( v$firstElement() v$removeElement( v$iterator() v$wait()
v$get( v$clone() v$isEmpty() v$toArray() v$remove( v$ensureCapacity( v$removeAll( v$insertElementAt( v$removeElementAt( v$listIterator() v$getClass()
v$equals( v$indexOf( v$lastIndexOf( v$toArray( v$elements() v$trimToSize() v$retainAll( v$lastElement() v$setElementAt( v$listIterator( v$notify()
v$toString() v$clear() v$addAll( v$addElement( v$set( v$subList( v$copyInto( v$removeAllElements() v$setSize( v$wait( v$notifyAll()
1> v$
गुड लक, और सुनिश्चित हो और चिल्लाना यदि आप विशिष्ट गड़बड़ी की है।
स्रोत
2011-04-26 21:12:46
हाय एंड्रयू - सीआरएएन पर आरजेएवी पेज इसका उपयोग करके कई दर्जन पैकेज सूचीबद्ध करता है।हो सकता है कि आप उन पर एक छड़ी लगा सकें ताकि वे यह देख सकें कि वे चीजें कैसे करते हैं? –
@JDLong पृथ्वी की सतह पर सूर्य विकिरण की गणना करने का एक अच्छा उदाहरण है। हो सकता है कि वह आपको चिपका सकता है और आपको स्रोत कोड पर इंगित कर सकता है (शायद गीथब पर "सेमीस्टिकेशन" खोजें। –