你能帮我用 NetBeans IDE 设置 ImageJ 插件开发吗?我尝试使用现有项目,但有两个问题: - Java 自由格式项目:我无法在该项目中附加 onvif.xsd。- 我正在尝试本教程:教程但在 netbeans 7.2.1 中我不能这样做:“转到构建>编译“(您的插件的名称)”“
请给我建议!
我正在使用 Maven 在 NetBeans 中开发 ImageJ 插件。我将展示如何创建和调试一个简单的插件。
您可以从创建一个新的 Maven 项目File->New Project->Maven->Java Application
并创建一个简单的 PlugIn 类开始:
package cz.cuni.lf1.imagejstubproject;
import ij.IJ;
import ij.plugin.PlugIn;
public class Hello implements PlugIn {
public void run(String arg) {
IJ.showMessage("My_Plugin", "Hello world!");
}
}
现在在文件夹 src/main/resources 中创建一个 plugins.config 文件,其内容为:
Plugins, "Hello World!", cz.cuni.lf1.imagejstubproject.Hello
第一个字符串是您的插件将出现的菜单文件夹,第二个是菜单标签,第三个是单击菜单项时要运行的类的完整类名。
下一步是向包含 ImageJ 类的 ij.jar 添加依赖项。这可以通过编辑 pom.xml 文件并添加:
<project>
...
<build>
...
</build>
<dependencies>
<dependency>
<groupId>gov.nih.imagej</groupId>
<artifactId>imagej</artifactId>
<version>1.45</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>
在构建过程中,Maven 会自动从 Internet 下载所需的库。它还可以下载源代码和JavaDoc。
ImageJ 要求最终 jar 的名称包含下划线,因此我们相应地设置文件名。更改 pom.xml 以包含如下内容:
<project>
...
<build>
<finalName>${project.artifactId}_${project.version}</finalName>
...
</build>
...
</project>
这就是构建 ImageJ 插件所需的全部内容。如果你编译它并将 jar 复制到 ImageJ 插件目录,你应该在 ImageJ 插件菜单中看到你的插件。如果您不想在 Netbeans 中调试您的插件,您可以在此处停止。
当我在 Netbeans 中编译它时,我喜欢将新 jar 复制到 ImageJ 插件文件夹中,这样我就可以快速尝试一下。您甚至不必重新启动 ImageJ 即可运行您的新插件。只需单击 ImageJ 中的 Help->Refresh Menus 即可重新加载插件。要将插件复制到 comile 上的 ImageJ 文件夹,请编辑 pom.xml 以包含:
<project>
...
<properties>
<imagej.path>c:\Program Files (x86)\ImageJ</imagej.path>
</properties>
<build>
<finalName>${project.artifactId}_${project.version}</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<id>copytoplugins</id>
<phase>install</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<tasks>
<copy todir="${imagej.path}/plugins/" file="target/${project.build.finalName}.jar"/>
</tasks>
</configuration>
</execution>
</executions>
</plugin>
...
</plugins>
</build>
...
</project>
并编辑imagej.path
属性以指向您的 ImageJ 安装文件夹(而不是插件文件夹)。现在你的插件应该被复制到每个构建的插件文件夹中。
为了能够从 Netbeans 调试您的插件,请将其添加到您的 pom.xml:
<project>
...
<build>
<finalName>${project.artifactId}_${project.version}</finalName>
<plugins>
...
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2</version>
<executions>
<execution>
<goals>
<goal>exec</goal>
</goals>
</execution>
</executions>
<configuration>
<executable>java</executable>
<commandlineArgs>-jar -agentlib:jdwp=transport=dt_socket,server=n,address=${jpda.address} "${imagej.path}/ij.jar" </commandlineArgs>
<workingDirectory>${imagej.path}</workingDirectory>
</configuration>
</plugin>
</plugins>
</build>
...
</project>
然后右键单击您的项目并选择属性。在 Actions 选项卡中,将 Debug Project 操作编辑为:
process-classes org.codehaus.mojo:exec-maven-plugin:1.2:exec
jpda.listen=true
现在,当您单击 NetBeans ImageJ 中的调试项目时,您应该能够调试您的插件。
您可以在此处下载此示例插件。