[英]Running main from java .class in MATLAB with accompanying .jar codec file
我有一個主要方法可以從Matlab中的Java類運行。 Java類文件中使用的某些方法位於.jar文件中。
我的javaclasspath.txt看起來像這樣:
C:\***\somefolder\commons-codec-1.7.jar
C:\***\somefolder
“ X.class”文件是“ somefolder”文件夾,以及它需要運行的commons-codec-1.7.jar文件。
我的Matlab Java版本如下:
'Java 1.8.0_201-b09 with Oracle Corporation Java HotSpot(TM) 64-Bit Server VM mixed mode'
環境變量MATLAB_HOME指向:
'C:\Program Files\Java\jdk1.8.0_201\jre'
使用此SDK編譯了Java .class腳本。
我的MATLAB代碼是:
import commons-codec-1.7.*
o = 'X'
javaMethod('main',o,'')
哪個輸出此錯誤:
Java exception occurred:
java.lang.NoSuchMethodError:
org.apache.commons.codec.binary.Base64.encodeBase64String([B)Ljava/lang/String;
at X.main(X.java:28)
根據我的理解,這是由於MATLAB無法在“ commonds-codec-1.7.jar”中找到所需的方法而導致的。 我該如何解決。
謝謝
我知道了。
解決方案是將javaclasspath.txt更改為:
<before> C:\***\somefolder\commons-codec-1.7.jar
C:\***\somefolder
這將強制commons-codec-1.7.jar覆蓋我的MATLAB安裝的默認靜態路徑中的commons-codec.jar。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.