calling a java class from matlab

I have a java class, and I need to call it from matlab to implement a document. is that you have an idea?

 채택된 답변

Richard Alcock
Richard Alcock 2011년 5월 6일

1 개 추천

It depends on whether it has been packaged into a .jar file or is a .class file.
Your class is called hello.HelloWorld
If it's in a file called c:\work\hello\HelloWorld.class, you need to add the root directory to the class path.
javaaddpath c:\work\
function Test()
hello.HelloWorld();
end
On the other hand, if it's in a c:\work\hello.jar file, you add the jar file to the class path.
javaaddpath c:\work\hello.jar
After that's it's the same.

댓글 수: 11

najmaf najma
najmaf najma 2011년 5월 6일
I add the path and when I call:
{
% Construct an instance
obj = najmaf.Najma;
}
it gives me this error:
??? Undefined function or variable 'HelloWorld'.
najmaf najma
najmaf najma 2011년 5월 6일
HelloWorld it's my class file
Richard Alcock
Richard Alcock 2011년 5월 7일
What is the full name of your class?
Is it in a jar file?
najmaf najma
najmaf najma 2011년 5월 7일
No, is a simple Java class called: HelloWorld.class
this is the code:
{
package hello;
import java.lang.String;
public class HelloWorld {
//package mypack;
public String hello;
public HelloWorld() {
hello = "world";
}
}
}
i called this class from matlab with:
{
function Test()
test = HelloWorld();
end
}
it gives me the error:
{
??? Undefined function or variable 'HelloWorld'.
Error in ==> Test at 3
test = HelloWorld();
}
najmaf najma
najmaf najma 2011년 5월 8일
do you have any suggestion???
najmaf najma
najmaf najma 2011년 5월 8일
do you have any suggestion???
Richard Alcock
Richard Alcock 2011년 5월 8일
I've updated my answer.
najmaf najma
najmaf najma 2011년 5월 8일
I received nothing.
I sent you the class with which I work with the error I received
najmaf najma
najmaf najma 2011년 5월 14일
is that you can send me your reply again because I have not received the update that you did
Neha
Neha 2011년 5월 21일
Hey Richard,
I have this query I'm troubling since long with it.
I need to invoke a java class in Matlab, and need to store the returned string value in a variable in Mtalab. for this query i got following solution from a website, plz tell me where its going wrong:
>>
The Hello World solution by The MathWorks provides some insights on how to run a simple 'Hello World' java application inside MATLAB. You may change the Java code a bit, in order to have a method that returns a String.
public class HelloWorld
{
public String hello()
{
String helloWorld = "Hello World!";
return helloWorld;
}
}
Once this simple class is compiled and on the MATLAB JVM classpath create an instance and invoke the method with the following two commands.
o = HelloWorld
output = o.hello;
The String returned by the HelloWorld instance is assigned to the MATLAB variable output.
<<
The command described to invoke java code in matlab(ie o=HelloWorld) gives error.
Richard Alcock
Richard Alcock 2011년 5월 24일
I need some more information:
1. What is the full path to HelloWorld.class file?
2. What is the exact javaaddpath command you ran in MATLAB?
3. What error are you getting from MATLAB

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Call Java from MATLAB에 대해 자세히 알아보기

제품

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by