2017-06-17 79 views
0

現在,我嘗試實現awt.events的一些事件方法,但是我無法加載它,因爲我總是得到一個ClassNotFoundException錯誤。rJava:未能加載awt.events

> library(rJava) 
> .jinit() 
[1] 0 
> jEvents <- .jnew("java.awt.event") 
Error in .jnew("java.awt.event") : java.lang.ClassNotFoundException 

編輯:

即使我嘗試一個特定的類,我得到一個錯誤信息:

> library(rJava) 
> .jinit() 
> jEvents <- .jnew("java.awt.event.ActionEvent") 
Error in .jnew("java.awt.event.ActionEvent") : 
    java.lang.NoSuchMethodError: <init> 

回答

0

似乎你試圖實例包,而不是類:

https://docs.oracle.com/javase/7/docs/api/java/awt/event/package-summary.html

也許您在找:

java.awt.event.ActionEvent 

你可以試試這個:

library(rJava) 
.jinit() 
> EVT <- J("java.awt.event.ActionEvent") 
> aEVT <- new(EVT, "StringObject", 1001L, "Hello") 
> aEVT 
[1] "Java-Object{java.awt.event.ActionEvent[ACTION_PERFORMED,cmd=Hello,when=0,modifiers=] on Str}" 

你要打電話給定參數的構造。請注意,ActionEvent沒有默認的構造函數。

你可以找到很好的源位置:

http://www.deducer.org/pmwiki/pmwiki.php?n=Main.Development#wwjoir

+0

THX。我嘗試了一個特定的類,但仍然收到錯誤消息。請參閱上面的修改。 – MTTM

+0

.oOo。一些新的東西.oOo。 – mko