выполнить строку как код в ImageJ (java)

Код находится в строке, пример:

String str = "IJ.run(\"FJ Edges\", \"\");";

Если выполняется str, будет запущено соответствующее содержимое.


person aidriiyan    schedule 27.08.2010    source источник
comment
Рад слышать это. Похоже, ваша проблема уже решена.   -  person Matt Ball    schedule 27.08.2010
comment
возможный дубликат: stackoverflow.com/questions/2605032 также: stackoverflow.com/questions/1168931 ... и: stackoverflow.com/questions/588242   -  person Matt Ball    schedule 27.08.2010
comment
Вы можете привести точный пример. Я не знаком с этой техникой написания сценариев, и можно ли ее исполнить на платформе ImageJ...?   -  person aidriiyan    schedule 28.08.2010


Ответы (1)


Мне не совсем понятно, что вы хотите сделать, но в приведенном вами примере нет причин не вызывать IJ.run() напрямую - например, в плагине это будет:

import ij.plugin.PlugIn;
import ij.IJ;

public class Simple_PlugIn implements PlugIn {
    public void run(String arg) {
        IJ.run("FJ Edges","");
    }
}

Если вы действительно хотите оценить произвольный код Java из строки, вам помогут ссылки, предложенные Мэттом Боллом в его комментариях.

Однако, если вы просто хотите создавать простые сценарии в ImageJ, будет проще использовать макроязык или Javascript. Вы можете найти руководство по бывшему здесь:

http://rsbweb.nih.gov/ij/developer/macro/macros.html

(В большинстве случаев полезно запустить скрипт с помощью средства записи макросов (в Плагины > Макросы > Запись...)) Надеюсь, это будет полезно.

person Mark Longair    schedule 03.11.2010