您能帮助我使用NetBeans IDE设置ImageJ插件开发吗? 我试过现有的项目,但有两个问题: - Java Free form porject:我无法在这个项目中附加onvif.xsd。 - 我正在尝试这个教程:tutorial但是在netbeans 7.2.1中我不能这样做:“转到Build> Compile”(你的插件名称)“”
请给我建议!答案 0 :(得分: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!");
}
}
现在使用content:
在文件src / main / resources中创建一个plugins.config文件Plugins, "Hello World!", cz.cuni.lf1.imagejstubproject.Hello
第一个String是插件出现的菜单文件夹,第二个是菜单标签,第三个是单击菜单项时要运行的类的完整类名。
下一步是向包含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中的帮助 - >刷新菜单即可重新加载插件。要将插件复制到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安装文件夹(而不是插件文件夹)。现在你的插件应该被复制到每个版本的plugins文件夹中。
为了能够从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中的调试项目时,您应该可以调试插件。
您可以下载此示例插件here。