在 IntelliJ 中运行 ImageJ 脚本

Posted

技术标签:

【中文标题】在 IntelliJ 中运行 ImageJ 脚本【英文标题】:Run ImageJ scripts in IntelliJ 【发布时间】:2019-01-31 21:24:10 【问题描述】:

我是一个普通的 ImageJ 用户,通过反复试验学会了编写 IJ.macro 和 Groovy。我这样做主要是使用 ImageJ 中的简单脚本编辑器。我最近提出了 IntelliJ,这是一个具有自动完成和调试器的出色 IDE。在 google 的帮助下,我能够包含 ImageJ jar 和可作为外部库/模块访问的插件,以便我可以使用上述功能 [通过在 File>Project Structure>Libraries>"+">Java> 中添加路径...这里我选择了带有 ImageJ 的 Jars 和插件的文件夹。

因此,我对能够完成最后一步持乐观态度。与其在 IntelliJ 中编写代码并使用 ImageJ 脚本工具运行,我想知道是否可以直接从 IntelliJ 运行脚本(例如使用 Groovy 或 Jython)。当我单击运行时,就像调用 ImageJ 一样。可能会更改 Java 运行环境,或者将其用作 VM。

在结束之前,如果我说的是非常奇怪或无意义的话,对不起。我是一个通过尝试学习的普通乔。

亲切的问候,

【问题讨论】:

【参考方案1】:

您可能想看看这个 GitHub 项目:

https://github.com/haesleinhuepf/run_jython_scripts_from_ide

它解释了通过启动和使用 ImageJ 从 IDE 中运行脚本所需的步骤。本教程侧重于 Jython,但适用于所有 supported scripting languages。


一般来说,最好在Image.sc forum 上而不是在 *** 上询问有关 ImageJ 使用和脚本开发的问题。

【讨论】:

【参考方案2】:

我从未使用过 ImageJ,但我想您的问题与 ImageJ 无关 :-)

我使用 java 中的 ImageJ,你将拥有一个带有 main 方法的类。只需右键单击该类,然后在出现的菜单上“运行”即可。

程序运行完成后,在出现的小窗口左上角会出现一个“运行”图标。

我猜这已经接近运行脚本了。

Groovy 将是编写脚本的更好起点(因为它部分是一种脚本语言)。您可以使用 IntelliJ 社区版编写 Groovy,但要获得全面支持,您需要终极版。所以我猜 groovy 控制台只能在终极版中使用......

我知道的所有其他选项都不会自动完成,只有穷人的调试器(println)

希望有帮助

【讨论】:

直接在 IntelliJ 中运行 Groovy 并没有帮助,因为为 ImageJ 开发的 Groovy 脚本可能会使用 SciJava 带来的附加功能,例如script parameters. 如果它们可以作为 java 库使用,它们可以作为依赖项添加。但我想,按照您的说法,ImageJ 应用程序使用 Groovy 来针对 on-java 依赖项执行脚本......不是吗?【参考方案3】:

我不知道人们是否还在为此苦苦挣扎,现在已经是 3.5 年了,但如果你用这个开始一个脚本:

//@ ImagePlus myImp
import ij.ImagePlus
ImagePlus myImp = myImp

您可以使用 IntelliJ 的自动完成功能和 SciJava 脚本参数。我在 ImageJ 和 IntelliJ 中都打开了相同的脚本文件。在 IntelliJ 中进行更改后,我转到脚本编辑器来运行它。它会自动检测到某些内容发生了变化并要求更新。

这有点麻烦,但我还没有找到如何让 IntelliJ 在 ImageJ 的运行实例中执行脚本。

【讨论】:

以上是关于在 IntelliJ 中运行 ImageJ 脚本的主要内容,如果未能解决你的问题,请参考以下文章

在 ImageJ 中运行宏时出现未定义的变量错误

Java:ImageJ 替代品

IntelliJ 终端 - 已更新且不再能够从终端运行脚本

干货 | ImageJ分析时间序列图像

如何在 IntelliJ 中以不同用户身份运行 JAR 应用程序?

从图像中删除区域 - ImageJ