2016-09-01 4 views
1

Ich habe imageJ Quelle heruntergeladen und in Eclipse importiert. Im Moment arbeite ich an einem Plugin für imageJ und ich kann imageJ mit meinem Plugin von Eclipse und debug ausführen, wenn ich will. Mein Problem ist, dass ich imageJ von Eclipse initiieren möchte, aber mit der bioformats reader plugin geladen, damit ich .lif-Dateien öffnen konnte. Wie kann ich dieses Plugin in den imageJ Quellcode einführen? Ich habe versucht, Abhängigkeiten zu der .jar-Datei von Bioformats in meinem Projekt hinzuzufügen, aber es funktioniert nicht.ImageJ: Debuggen mit Bioformaten

Antwort

-1

Gerade für die jemals auf dem gleichen Problem sucht:

  1. alle Quellcode downloaden: https://github.com/openmicroscopy/bioformats
  2. Kopieren Sie den Ordner: bioformats-Entwicklung \ components \ bioformats-Plugins \ src zu Ihrem Projekt.
  3. Kopieren loci.plugins.LociImporter.java zu ij.plugin.
  4. löschen loci.plugins.LociImporter.java
  5. Ändern ij.plugin.LociImporter.java und die Linie der arg hinzu:

    public void run(String arg) { 
        DebugTools.enableLogging("INFO"); 
        arg = "location=[Local machine] windowless=false "; //<-This one 
        [...] 
    } 
    
  6. Ändern loci.plugins.in.Importer.java:

    //import loci.plugins.LociImporter;//substitute this import per 
        import ij.plugin.LociImporter;//this one 
    
  7. Ändern ij.Menus.java:

    [...] 
    Menu importMenu = getMenu("File>Import", true); 
    addPlugInItem(importMenu, "Bio-Formats", "ij.plugin.LociImporter",0,false); //<-Add this line 
    [...] 
    
  8. Fügen Sie bioformats.jar als externe Lib dem Projekt hinzu.

Führen Sie das Projekt aus. Jetzt können Sie .lif von Datei-> importieren-> Bio-Formate öffnen. Mit dieser Änderung können Sie nicht Drag & Drop durchführen, aber Sie können dieses Plugin verwenden, indem Sie nur Dateien mit diesem Menü öffnen. Da dies nur den "Import" verwendet, ist dies nur zum Öffnen nützlich. Wenn Sie etwas zum Speichern möchten, sollten Sie loci.plugins.LociExporter ("") auf die gleiche Weise wie beim Import aufrufen. (Eigentlich mit meiner Modifikation rufen wir ij.plugin.LociImporter („location = [Local machine] fensterlos = false“)