I have been trying to create a static function that allows me to create an Akka Actor so I can try to play with it from within slime, but I am running into a very odd issue.
-----
Issue: The static function for Java works perfectly, but the equivalent static function for slime does not.
-----
The files for reproducing this issue are attached, and the repository that I am using is: https://github.com/ubikation/chemicalambda
Testing requires having the correct jars, which are installable via the pom.xml: mvn install mvn dependency:copy-dependencies The second command should create a target/dependency folder that you have to add to the classpath, along with the dir containing all of the files I've attached to this email.
-----
Here is my calling session: CL-USER> (load "/home/ubikation/src/lisp/chemicalambda/AkkaTest.lisp") T CL-USER> (my-test)
This is the error when trying to call the static function: Java exception 'java.lang.NoClassDefFoundError: akka/actor/ActorSystem'. [Condition of type JAVA-EXCEPTION]
Restarts: 0: [RETRY] Retry SLIME REPL evaluation request. 1: [*ABORT] Return to SLIME's top level. 2: [ABORT] Abort thread.
Backtrace: 0: (#<FUNCTION {1E9ABE91}> #<JAVA-EXCEPTION {15883401}> #<FUNCTION {1E9ABE91}>) 1: (APPLY #<FUNCTION {1E9ABE91}> (#<JAVA-EXCEPTION {15883401}> #<FUNCTION {1E9ABE91}>)) 2: (SYSTEM::RUN-HOOK SYSTEM::*INVOKE-DEBUGGER-HOOK* #<JAVA-EXCEPTION {15883401}> #<FUNCTION {1E9ABE91}>) 3: (INVOKE-DEBUGGER #<JAVA-EXCEPTION {15883401}>) 4: org.armedbear.lisp.Lisp.error(Lisp.java:382) 5: org.armedbear.lisp.Java.jstatic(Java.java:487) 6: org.armedbear.lisp.Java$pf_jstatic.execute(Java.java:513) 7: org.armedbear.lisp.Primitive.execute(Primitive.java:123) 8: (JSTATIC "test" "AkkaApiSimple") 9: (VOID-FUNCTION) 10: (MY-TEST) 11: (SYSTEM::%EVAL (MY-TEST)) 12: (EVAL (MY-TEST)) 13: (SWANK::EVAL-REGION "(my-test) ") 14: (#<FUNCTION {210E38B2}>) 15: (SWANK::TRACK-PACKAGE #<FUNCTION {210E38B2}>) 16: (#<FUNCTION {2CAC3F12}>) 17: (SWANK::CALL-WITH-RETRY-RESTART "Retry SLIME REPL evaluation request." #<FUNCTION {2CAC3F12}>) 18: (#<FUNCTION {6060CDA7}>) 19: (FUNCALL #<FUNCTION {6060CDA7}>) 20: (#<FUNCTION (LAMBDA (SWANK-BACKEND::FN)) {735DC05F}> #<FUNCTION {6060CDA7}>) 21: (APPLY #<FUNCTION (LAMBDA (SWANK-BACKEND::FN)) {735DC05F}> #<FUNCTION {6060CDA7}> NIL) 22: (SWANK-BACKEND:CALL-WITH-SYNTAX-HOOKS #<FUNCTION {6060CDA7}>) 23: (SWANK::CALL-WITH-BUFFER-SYNTAX NIL #<FUNCTION {6060CDA7}>) 24: (SWANK::REPL-EVAL "(my-test) ") 25: (SWANK:LISTENER-EVAL "(my-test) ") 26: (SYSTEM::%EVAL (SWANK:LISTENER-EVAL "(my-test) ")) 27: (EVAL (SWANK:LISTENER-EVAL "(my-test) ")) 28: (#<FUNCTION {1000D825}>) 29: (JRUN-EXCEPTION-PROTECTED #<FUNCTION {1000D825}>) 30: (SWANK:EVAL-FOR-EMACS (SWANK:LISTENER-EVAL "(my-test) ") "COMMON-LISP-USER" 12) 31: (APPLY #<EVAL-FOR-EMACS {4FAC1D53}> ((SWANK:LISTENER-EVAL "(my-test) ") "COMMON-LISP-USER" 12)) 32: (SWANK::PROCESS-REQUESTS NIL) 33: (#<FUNCTION {276E6D58}>) 34: (EVAL (SWANK:LISTENER-EVAL "(test) ")) 35: (#<FUNCTION {42CCC0A1}>) 36: (JRUN-EXCEPTION-PROTECTED #<FUNCTION {42CCC0A1}>) 37: (SWANK:EVAL-FOR-EMACS (SWANK:LISTENER-EVAL "(test) ") "COMMON-LISP-USER" 9) 38: (APPLY #<EVAL-FOR-EMACS {4FAC1D53}> ((SWANK:LISTENER-EVAL "(test) ") "COMMON-LISP-USER" 9)) 39: (SWANK::PROCESS-REQUESTS NIL) 40: (#<FUNCTION {107AAC4A}>) 41: (#<FUNCTION {65C536B9}>) 42: (FUNCALL #<FUNCTION {65C536B9}>) 43: ((FLET SWANK-BACKEND:CALL-WITH-DEBUGGER-HOOK) #<SWANK-DEBUGGER-HOOK {773F0D3A}> #<FUNCTION {65C536B9}>) 44: (APPLY #<(FLET CALL-WITH-DEBUGGER-HOOK) {768BDFE1}> #<SWANK-DEBUGGER-HOOK {773F0D3A}> #<FUNCTION {65C536B9}> NIL) 45: (SWANK-BACKEND:CALL-WITH-DEBUGGER-HOOK #<SWANK-DEBUGGER-HOOK {773F0D3A}> #<FUNCTION {65C536B9}>) 46: (#<FUNCTION {59176994}>) 47: (SWANK::CALL-WITH-BINDINGS ((*STANDARD-OUTPUT* . #S(SLIME-OUTPUT-STREAM)) (*STANDARD-INPUT* . #S(SLIME-INPUT-STREAM)) (*TRACE-OUTPUT* . #S(SLIME-OUTPUT-STREAM)) (*ERROR-OUTPUT* . #S(SLIME-OUTPUT-STREA.. 48: (#<FUNCTION {3A65F5B1}>) 49: (JRUN-EXCEPTION-PROTECTED #<FUNCTION {3A65F5B1}>) 50: (#<FUNCTION {7BE5556A}>) 51: (JRUN-EXCEPTION-PROTECTED #<FUNCTION {7BE5556A}>) 52: (SWANK::HANDLE-REQUESTS #S(SWANK::MULTITHREADED-CONNECTION :SOCKET #<java.net.ServerSocket ServerSocket[addr=0.0.0.0/0.0.0..... {6BC6FEA9}> :SOCKET-IO #<TWO-WAY-STREAM {55794086}> :DEDICATED-OUTPUT NI.. 53: (SWANK::REPL-LOOP #S(SWANK::MULTITHREADED-CONNECTION :SOCKET #<java.net.ServerSocket ServerSocket[addr=0.0.0.0/0.0.0..... {6BC6FEA9}> :SOCKET-IO #<TWO-WAY-STREAM {55794086}> :DEDICATED-OUTPUT NIL :USE.. 54: (#<FUNCTION {B7B4941}>) 55: (SWANK::CALL-WITH-BINDINGS NIL #<FUNCTION {B7B4941}>) 56: (#<FUNCTION {4B06504A}>) 57: (FUNCALL #<FUNCTION {4B06504A}>) 58: (#<FUNCTION (LAMBDA ()) {B8150C1}>) 59: (THREADS::THREAD-FUNCTION-WRAPPER #<FUNCTION (LAMBDA ()) {B8150C1}>)
I've tried to be very clear but I'm sure I've missed something. I don't know what's causing this error, and I can't tell if I'm going about this in some stupid manner or if this is a symptom of a more complex issue.
If you need any help reproducing this issue please email me, I'm desperate for any input.
Thank you very much for your time!
On 8/21/13 2:56 AM, ubikation _ wrote:
I have been trying to create a static function that allows me to create an Akka Actor so I can try to play with it from within slime, but I am running into a very odd issue.
Attached please find a patch of the build instructions for chemicalambda. I haven't quite gotten around to testing your problems with the invocation of static method, but anticipate getting to that it the next round of hacking.
Thank you very much Mark! This is incredibly helpful and I really appreciate the time you spent on this.
On Wed, Aug 21, 2013 at 6:11 PM, Mark Evenson evenson@panix.com wrote:
On 8/21/13 2:56 AM, ubikation _ wrote:
I have been trying to create a static function that allows me to create an Akka Actor so I can try to play with it from within slime, but I am running into a very odd issue.
Attached please find a patch of the build instructions for chemicalambda. I haven't quite gotten around to testing your problems with the invocation of static method, but anticipate getting to that it the next round of hacking.
-- "A screaming comes across the sky. It has happened before, but there is nothing to compare to it now."
On 8/21/13 9:54 PM, ubikation _ wrote:
Thank you very much Mark! This is incredibly helpful and I really appreciate the time you spent on this.
Another round of diffs against the ]chemicalambda master][git]. Still haven't finished refactoring the Java...
[git]: git://github.com/ubikation/chemicalambda
On 8/22/13 9:10 PM, Mark Evenson wrote:
Another round of diffs against the ]chemicalambda master][git]. Still haven't finished refactoring the Java...
Attached, please find the correct patch.
armedbear-devel@common-lisp.net