您可以幫助我使用NetBeans IDE設置ImageJ插件開發嗎? 我嘗試了現有的項目,但有兩個問題: - Java Free form porject:我無法在此項目中附加onvif.xsd。我試圖這個教程:tutorial但在netbeans 7.2.1我不能做到這一點:「轉到生成>編譯」(您的插件的名稱)「」ImageJ插件開發和NetBeans IDE
請給我指教!
您可以幫助我使用NetBeans IDE設置ImageJ插件開發嗎? 我嘗試了現有的項目,但有兩個問題: - Java Free form porject:我無法在此項目中附加onvif.xsd。我試圖這個教程:tutorial但在netbeans 7.2.1我不能做到這一點:「轉到生成>編譯」(您的插件的名稱)「」ImageJ插件開發和NetBeans IDE
請給我指教!
我使用Maven在NetBeans中開發ImageJ插件。我將演示如何創建和調試一個簡單的插件。
您可以通過創建一個新的Maven項目File->New Project->Maven->Java Application
並創建一個簡單的插件類開始:
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 /資源plugins.config文件的內容:
Plugins, "Hello World!", cz.cuni.lf1.imagejstubproject.Hello
第一個String是插件將出現的菜單文件夾,第二個是菜單標籤,第三個是點擊菜單項時要運行的類的完整類名。
下一步是向ij.jar添加一個依賴項,其中包含ImageJ類。這可以通過編輯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會自動從互聯網上下載所需的庫。它還可以下載源代碼和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的安裝文件夾(不是插件文件夾)。現在你的插件應該被複制到每個版本的插件文件夾中。
爲了能夠調試通過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>
,然後右鍵單擊您的項目並選擇屬性。在操作選項卡編輯調試項目採取行動,這一點:
process-classes org.codehaus.mojo:exec-maven-plugin:1.2:exec
jpda.listen=true
現在,當您單擊調試項目在NetBeans的ImageJ應該運行,你應該能夠調試你的插件。
你可以下載這個樣本插件here。