This is a minimal Maven project implementing an ImageJ 1.x plugin
It is intended as an ideal starting point to develop new ImageJ 1.x plugins in an IDE of your choice. You can even collaborate with developers using a different IDE than you.
In Eclipse, for example, it is as simple as File>Import...>Existing Maven Project
In Netbeans, it is even simpler: File>Open Project. The same works in IntelliJ.
If jEdit is your preferred IDE, you will need the Maven Plugin.
Die-hard command-line developers can use Maven directly by calling mvn in the project root.
However you build the project, in the end you will have the .jar
file
(called artifact in Maven speak) in the target/ subdirectory.
To copy the artifact into the correct place, you can call mvn -Dimagej.app.directory=/path/to/Fiji.app/
. This will not only copy your
artifact, but also all the dependencies. Restart your ImageJ or call
Help>Refresh Menus to see your plugin in the menus.
Developing plugins in an IDE is convenient, especially for debugging. To that end, the plugin contains a main() method which sets the plugins.dir system property (so that the plugin is added to the Plugins menu), starts ImageJ, loads an image and runs the plugin. See also this page for information how Fiji makes it easier to debug in IDEs.
Since this project is intended as a starting point for your own developments, it is in the public domain.
Either
git clone git://github.com/imagej/minimal-ij1-plugin
, or- unpack https://github.com/imagej/minimal-ij1-plugin/archive/master.zip
Then:
- Edit the
pom.xml
file. Every entry should be pretty self-explanatory. In particular, change- the artifactId (and optionally also groupId)
- the version (note that you typically want to use a version number ending in -SNAPSHOT to mark it as a work in progress rather than a final version)
- the dependencies (read how to specify the correct groupId/artifactId/version triplet here)
- the developer information
- the scm information
- Remove the
Process_Pixels.java
file and add your own.java
files tosrc/main/java/<package>/
(if you need supporting files -- like icons -- in the resulting.jar
file, put them intosrc/main/resources/
) - Edit
src/main/resources/plugins.config
- Replace the contents of
README.md
with information about your project.
If you cloned the minimal-ij1-plugin
repository, you probably want to
publish the result in your own repository:
- Call
git status
to verify .gitignore lists all the files (or file patterns) that should be ignored - Call
git add .
andgit add -u
to stage the current files for commit - Call
git commit
orgit gui
to commit the changes - Create a new GitHub repository
git remote set-url origin [email protected]:<username>/<projectname>
git push origin HEAD