[Jython] Generated Java file doesn't extend base class?
sismex01 at hebmex.com
sismex01 at hebmex.com
Mon Dec 16 15:26:45 EST 2002
> From: skywalkerpackage at hotmail.com
> Sent: Monday, December 16, 2002 2:08 PM
>
> Hello all,
>
> I try to create Java class files from Python for a Java Agents
> Environment (Grasshopper, see www.ikv.de). I use Jython for this task.
>
> In order to create a minimal Grasshopper mobile agent you just have to
> extend de.ikv.grasshopper.agent.MobileAgent and to overwrite the
> live() methode. This looks as follows in Java:
>
> // sample file HelloAgent.java
> import de.ikv.grasshopper.agent.MobileAgent;
>
> public class HelloAgent extends MobileAgent {
> public void live() {
> log("Hello Agent!");
> }
> }
>
> Therfore, I thought the equivalent Python code would look like this:
>
> # HelloAgent.py
> from de.ikv.grasshopper.agent import MobileAgent
>
> class HelloAgent(de.ikv.grasshopper.agent.MobileAgent):
> def live(self):
> "@sig public void live()"
> log("Hello Agent!")
>
>
>
>
> I don't get a compilation error, but it doesn't work because the
> generated Java file (HelloAgent.java) extends java.lang.Object and not
> de.ikv.grasshopper.agent.MobileAgent
>
> Why? Can't I force jythonc to generate a Java file that extends
> de.ikv.grasshopper.MobileAgent?
EOW.
You're extending the wrong identifier; when you do:
> from de.ikv.grasshopper.agent import MobileAgent
the identifier "MobileAgent" is brought into your namespace,
there's no need to use "de.ikv.grasshopper.agent.MobileAgent",
because you didn't import the whole module, only a single
identifier from within.
I know I shouldn't say this, but reading the docs will help
you.
>
> Any help would be great.
>
> ByeBye
>
> Johannes
> --
> http://mail.python.org/mailman/listinfo/python-list
>
More information about the Python-list
mailing list