Skip to content

A simple Maven project implementing an ImageJ 1.x plugin

Notifications You must be signed in to change notification settings

carloskl12/minimal-ij1-plugin

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

51 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Versión original del proyecto en inglés minimal plugin

Esta es la estructuctura mínima para la implementación de un proyecto con Maven de un plugin para ImageJ 1.x.

Se pretende que sea un punto de partida ideal para desarrollar nuevos plugins para ImageJ 1.x en un IDE de su elección. Es posible colaborar con desarrolladores que trabajan con un IDE diferente al suyo.

En Eclipse, por ejemplo, esto es tan simple como File>Import...>Existing Maven Project

En Netbeans, es incluso más simple: File>Open Project. De igual forma en IntelliJ.

Si jEdit es su IDE preferido, necesita instalar Maven Plugin.

Programadores rebeldes en línea de comandos pueden usar directamente Maven llamando mvn en el directorio raiz.

No obstante, al generar el proyecto, al final tendrá el archivo .jar (llamado artifact en la jerga Maven) en el subdirectorio target/

Para copiar el artifact en el lugar correcto, se debe llamar mvn -Dimagej.app.directory=/path/to/Fiji.app/. Esto no solamente copia el artifact, si no tambien todas las dependencias. Para notar los cambios, reiniciar ImageJ o realizar Help>Refresh Menus para mirar su plugin en los menus.

Desarrollar plugins en un IDE es conveniente, especialmente para la fase de depuración (debugging). Para hacer debugging, el plugin contiene el método main() que establece la propiedad del sistema plugins.dir (de modo que el plugin se agrega al menu Plugins), inicia ImageJ, carga una imagen y corre el plugin. Mirar tambien esta página para información de cómo hacer en Fiji para el debugging usando un IDE.

Dado que este proyecto pretende ser un punto de partida para sus propios desarrollos, este es de dominio público

Cómo usar este proyecto como punto de partida

Ya sea

Entonces:

  1. Editar el archivo pom.xml. Cada entrada debe ser bastante autoexplicativa. En particular, cambiar:
    1. el artifactId (Nota: debe contener un caracter'_'), nombre del plugin.
    2. el groupId (opcional)
    3. la version (notar que tipicamente cuando se desea usar un número de versión como sufijo,_SNAPSHOT, es para indicar que el trabajo está en progreso en lugar de ser una versión final)
    4. las dependencies (leer como especificar correctamente la terna groupId/artifactId/version aquí)
    5. developer, información del desarrollador.
    6. scm información scm.
  2. Eliminar el archivo Process_Pixels.java y crear su archivo .java en src/main/java/<package>/ (si necesita archivos de soporte como iconos en el resultado .jar, colocarlos en src/main/resources/)
  3. Editar src/main/resources/plugins.config
  4. Reemplazar el contenido de README.md con la información acerca de su proyecto.

Si clonó el repositorio minimal-ij1-plugin, probablemente desea publicar los resultados en su propio repositorio:

  1. Llamar git status para verificar la lista de archivos modificados y que no se deben ignorar (patrones de los archivos a ignorar se dan en .gitignore)
  2. Llamar git add . y git add -u para preparar los archivos actuales para un commit (en jerga de github, un commit es cuando se aceptan los cambios realizados)
  3. Llamar git commit o git gui para realizar el commit.
  4. Crear un nuevo repositorio en GitHub
  5. git remote set-url origin git@github.com:<username>/<projectname> Enlaza con el repositorio remoto.
  6. git push origin HEAD , sube los archivos.

Eclipse: Para asegurarse que Maven haga las copias en su carpeta de Fiji

  1. Ir a Run Configurations...
  2. Escoger Maven Build
  3. Agregar los siguientes parámetros: name: imagej.app.directory value: /path/to/Fiji.app/

Esto asegura que el archivo final .jar también sea copiado en su carpeta de plugins de Fiji cada vez que Maven construye el proyecto.

About

A simple Maven project implementing an ImageJ 1.x plugin

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 100.0%