emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[O] [babel] ob-java error org-babel-execute-src-block: Wrong type argume


From: Torsten Wagner
Subject: [O] [babel] ob-java error org-babel-execute-src-block: Wrong type argument: characterp, "-cp ."
Date: Tue, 7 Aug 2012 17:17:42 +0900

Hi all,

every year I want like to evaluate java snippets in org-mode to
evaluate courseworks.
This worked fine but recently I had a bigger data crash and re-setup
my office machine.
It worked ok for the crash (that is it worked ok for the set-up at that time).

I use now

GNU Emacs 24.1.1
Org-mode version 7.8.11

I can evaluate simpler blocks but for more complex once I run into trouble
I used

#+BABEL: :mkdirp t
#+BABEL: :cmpflag -cp .
#+BABEL: :cmdline -cp .

#+begin_src emacs-lisp
(setq org-babel-default-header-args:java '((:cmpflag "-cp .")
(:cmdline "-cp .")))
#+end_src


** CODE-TESTER
#+BEGIN_SRC java :classname enshu4/Shop4Tester
package enshu4;
public class Shop4Tester {
        public static void main(String[] args) {
                System.out.println("----------Checking for list 1---------");
                Shop4 shop1 = new Shop4("item1.txt");
                shop1.print("potato");
                shop1.printAllNames();

                System.out.println("\n----------Checking for list 2----------");
                Shop4 shop2 = new Shop4("item2.txt");
                shop2.print("potato");
                shop2.printAllNames();
        }
}
#+END_SRC


** studentID
#+BEGIN_SRC java :classname enshu4/Shop4
package enshu4;

import java.util.Hashtable;
import java.util.Iterator;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.io.FileNotFoundException;

public class Shop4 {
    private Hashtable<String, Integer> item;

    public void printAllNames() {
        String tes;
        Iterator<String> it = item.keySet().iterator();
        while (it.hasNext()) {
                tes = it.next();
            System.out.println(tes + " a "  + item.get(tes) + "Euro");
        }
    }

    public Shop4(String fname) {
        item = new Hashtable<String,Integer>();
                FileReader fr;
                try {
                    fr = new FileReader(fname);
                } catch (FileNotFoundException e) {
                    System.out.println(fname + "not found");
                    return;
                }
        
                BufferedReader br = new BufferedReader(fr);
                String line;
        
                try {
                    while ((line = br.readLine()) != null) {
                        String target = line;
                        String[] splt = target.split("=");
                        String key = splt[0];
                        String val = splt[1];
                         item.put(key,new Integer(val));
                    }
                    br.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
    }

    public static void main(String[] args) {
        Shop4 shop = new Shop4("item.txt");
        shop.printAllNames();
    }
}
#+END_SRC

If I want to execute the given source code block I end up with an error message

org-babel-execute-src-block: Wrong type argument: characterp, "-cp ."


I believe this is rather common due to some changes within emacs, but
I can't find a way to get around this.

Any idea?


BTW. previous year it seems I created the lists by

#+BEGIN_SRC text :tangle ./item1.txt
potato=120
bread=160
milk=180
#+END_SRC

but this seems not to work anymore.... anyhow that would be a minor problem


Thanks for looking into this.

Torsten



reply via email to

[Prev in Thread] Current Thread [Next in Thread]